Commit 36ca75cd authored by dragondean@qq.com's avatar dragondean@qq.com
parents c945b22f 12dd79f3
......@@ -22,7 +22,7 @@
<!-- 开始装柜 -->
<el-dialog title="开始装柜" :visible.sync="dialogVisible" fullscreen :modal-append-to-body=false append-to-body>
<startPacking v-bind="$attrs" v-if="dialogVisible" @closeDialog="closeDialog" />
<startPacking v-bind="$attrs" v-if="dialogVisible" v-on="$listeners" @closeDialog1="closeDialog1" />
</el-dialog>
<!-- 操作 -->
......@@ -99,7 +99,7 @@ export default {
}
});
},
closeDialog(type) {
closeDialog1(type) {
this.dialogVisible = false;
if (type) this.cancel(type);
},
......
......@@ -38,7 +38,7 @@
{{orderData.consignorVO?orderData.consignorVO.company||'':''}}
</el-descriptions-item>
<el-descriptions-item label="发货电话">
{{orderData.consignorVO?(orderData.consignorVO.phone?(orderData.consignorVO.countryCode+orderData.consignorVO.phone):''):''}}
{{orderData.consignorVO?(orderData.consignorVO.phone?("+"+orderData.consignorVO.countryCode+orderData.consignorVO.phone):''):''}}
</el-descriptions-item>
</el-descriptions>
<el-descriptions :column="4">
......@@ -49,7 +49,7 @@
{{orderData.consigneeVO?orderData.consigneeVO.company||'':''}}
</el-descriptions-item>
<el-descriptions-item label="收货电话">
{{orderData.consigneeVO?orderData.consigneeVO.phone?orderData.consigneeVO.countryCode+orderData.consigneeVO.phone :'':''}}
{{orderData.consigneeVO?orderData.consigneeVO.phone?"+"+orderData.consigneeVO.countryCode+orderData.consigneeVO.phone :'':''}}
</el-descriptions-item>
</el-descriptions>
</el-card>
......@@ -117,7 +117,7 @@
</p>
</div>
<div>
<el-button type="primary" @click="addShop">放入</el-button>
<el-button type="primary" :disabled="isAudit" @click="addShop">放入</el-button>
</div>
</div>
<el-table border :data="splitData.orderSplitItemBackVOList">
......@@ -157,7 +157,7 @@
</el-table-column>
<el-table-column label="操作" align="center">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-delete" @click="removeShop(scope.row.id)">移出</el-button>
<el-button size="mini" :disabled="isAudit" type="text" icon="el-icon-delete" @click="removeShop(scope.row.id)">移出</el-button>
</template>
</el-table-column>
</el-table>
......@@ -168,12 +168,12 @@
<work-flow xmlkey="split_order" v-model="selectedUsers"></work-flow>
</el-row>
<div slot="footer" class="card footer_btn" v-if="orderData.status!=99">
<el-button v-if="orderData.status!=19" type="primary" @click="submitForm">提交申请</el-button>
<el-button v-if="orderData.status!=19" plain type="primary" @click="$emit('closeDialog')">取消</el-button>
<el-button v-if="orderData.status==19" type="primary">审核中</el-button>
<el-button v-if="orderData.status==19" plain type="primary" @click="cancelSplit">取消审核</el-button>
<el-button v-if="orderData.status==19" plain type="primary" @click="$emit('closeDialog')">返回</el-button>
<div slot="footer" class="card footer_btn">
<el-button v-if="!isAudit" type="primary" @click="submitForm">提交申请</el-button>
<el-button v-if="!isAudit" plain type="primary" @click="$emit('closeDialog2')">取消</el-button>
<el-button v-if="isAudit" type="primary" @click="jumpReviewDetail">审核中</el-button>
<el-button v-if="isAudit" plain type="primary" @click="cancelSplit">取消审核</el-button>
<el-button v-if="isAudit" plain type="primary" @click="$emit('closeDialog2')">返回</el-button>
</div>
<!-- 对话框(添加 / 修改) -->
......@@ -215,15 +215,14 @@
import {
getSplitList,
createSplit,
cancelApply,
createSplitItem,
deleteSplitItem,
} from "@/api/ecw/orderHandle";
import { getTradeCityList } from "@/api/ecw/region";
import WorkFlow from "@/components/WorkFlow";
import { getOrder } from "@/api/ecw/order";
import { serviceMsg } from "../../utils";
import { createApproval } from "@/api/ecw/boxSea";
import { serviceMsg, toReviewDetail } from "../../utils";
import { createApproval, approvalCancel } from "@/api/ecw/boxSea";
export default {
name: "splitOrder",
......@@ -288,6 +287,23 @@ export default {
},
},
},
computed: {
isAudit() {
const { shipmentObj } = this.$attrs;
const { cabinetSplitInfo } = shipmentObj;
if (cabinetSplitInfo) {
/**
* PROCESS(1, "处理中"),
* APPROVE(2, "通过"),
* REJECT(3, "不通过"),
* CANCEL(4, "已取消");
*/
const { approvalStatus } = cabinetSplitInfo;
if (approvalStatus === 1) return true;
}
return false;
},
},
methods: {
/* 拆箱总数 */
totalSplitNum() {
......@@ -405,6 +421,7 @@ export default {
shipmentId: shipmentObj.id,
}).then((res) => {
serviceMsg(res, this).then((res) => {
this.$emit("getBoxInfo");
this.getSplit();
});
});
......@@ -469,11 +486,12 @@ export default {
const { shipmentObj } = this.$attrs;
approvalCancel({
applyReason: "取消审核",
id: shipmentObj["cabinetApprovalInfo"].id,
id: shipmentObj["cabinetSplitInfo"].id,
shipmentId: shipmentObj.id,
}).then((res) => {
serviceMsg(res, this).then(() => {
this.$emit("closeDialog");
this.$emit("getBoxInfo");
this.getSplit();
});
});
},
......@@ -481,6 +499,11 @@ export default {
this.shopOpen = false;
this.shopForm = {};
},
jumpReviewDetail() {
const { cabinetSplitInfo } = this.$attrs.shipmentObj;
toReviewDetail.apply(this, [cabinetSplitInfo.bpmProcessId]);
this.$emit("closeDialog2", "close");
},
},
};
</script>
......
......@@ -119,7 +119,7 @@
<div v-if="isUnderReview">
<el-button type="primary" @click="jumpReviewDetail">封柜审核中</el-button>
<el-button plain type="primary" @click="canclAudit">取消审核</el-button>
<el-button plain type="primary" @click="$emit('closeDialog')">返回</el-button>
<el-button plain type="primary" @click="$emit('closeDialog1')">返回</el-button>
</div>
</el-row>
......@@ -154,7 +154,7 @@
</el-form>
<el-row class="operate-button">
<el-button type="primary" @click="onSubmit('modifyForm')">下一步</el-button>
<el-button @click="closeDialog">取消</el-button>
<el-button @click="closeDialog2">取消</el-button>
</el-row>
</template>
<!-- 装柜纠错 -->
......@@ -166,7 +166,7 @@
</el-form>
<el-row class="operate-button">
<el-button type="primary" @click="onSubmit('correctionForm')">提交</el-button>
<el-button @click="closeDialog">取消</el-button>
<el-button @click="closeDialog2">取消</el-button>
</el-row>
</template>
<!-- 批量装柜纠错(订单号) -->
......@@ -178,7 +178,7 @@
</el-form>
<el-row class="operate-button">
<el-button type="primary" @click="onSubmit('orderForm')">提交</el-button>
<el-button @click="closeDialog">取消</el-button>
<el-button @click="closeDialog2">取消</el-button>
</el-row>
</template>
<!-- 装柜批量输入 -->
......@@ -190,11 +190,11 @@
</el-form>
<el-row class="operate-button">
<el-button type="primary" @click="onSubmit('batchForm')">提交</el-button>
<el-button @click="closeDialog">取消</el-button>
<el-button @click="closeDialog2">取消</el-button>
</el-row>
</template>
<!-- 拆单 -->
<splitOrder v-bind="$attrs" :shipmentObj="shipmentObj" v-if="dialogConfig.type === 'splitOrder' && dialogConfig.dialogVisible" :currRow="currRow" @closeDialog="closeDialog" />
<splitOrder v-bind="$attrs" v-on="$listeners" :shipmentObj="shipmentObj" v-if="dialogConfig.type === 'splitOrder' && dialogConfig.dialogVisible" :currRow="currRow" @closeDialog2="closeDialog2" />
</el-dialog>
</div>
</template>
......@@ -372,7 +372,7 @@ export default {
this.$set(this.dialogConfig, "dialogVisible", true);
},
/** 关闭弹窗 */
closeDialog() {
closeDialog2() {
this.$set(this.dialogConfig, "dialogVisible", false);
},
/** 修改提交 */
......@@ -428,7 +428,7 @@ export default {
params.orderNo = this.batchObj.qrCode;
batchCreate(params).then((res) => {
serviceMsg(res, this).then(() => {
this.closeDialog();
this.closeDialog2();
this.getLoadSecGoodsList();
});
});
......@@ -445,14 +445,14 @@ export default {
if (type === "single") {
singleDelete(params).then((res) => {
serviceMsg(res, this).then(() => {
this.closeDialog();
this.closeDialog2();
this.getLoadSecGoodsList();
});
});
} else {
batchDelete(params).then((res) => {
serviceMsg(res, this).then(() => {
this.closeDialog();
this.closeDialog2();
this.getLoadSecGoodsList();
});
});
......@@ -479,12 +479,12 @@ export default {
};
boxUpdate(params).then((res) => {
serviceMsg(res, this);
this.closeDialog();
this.closeDialog2();
});
},
/* 补单完成 */
supplementFinish() {
this.closeDialog();
this.closeDialog2();
this.getLoadSecGoodsList();
},
/* 申请封柜 */
......@@ -497,7 +497,7 @@ export default {
shipmentId: this.shipmentObj.id,
}).then((res) => {
serviceMsg(res, this).then(() => {
this.$emit("closeDialog", "submit");
this.$emit("closeDialog1", "submit");
});
});
},
......@@ -516,14 +516,14 @@ export default {
shipmentId: this.shipmentObj.id,
}).then((res) => {
serviceMsg(res, this).then(() => {
this.$emit("closeDialog", "submit");
this.$emit("closeDialog1", "submit");
});
});
},
jumpReviewDetail() {
const { cabinetApprovalInfo } = this.shipmentObj;
toReviewDetail.apply(this, [cabinetApprovalInfo.bpmProcessId]);
this.$emit("closeDialog", "close");
this.$emit("closeDialog1", "close");
},
},
computed: {
......
......@@ -72,7 +72,7 @@
</el-select>
</el-form-item>
<el-form-item label="密码" prop="pwd">
<el-input v-model="form.pwd" placeholder="请输入密码" type="password"/>
<el-input v-model="pwd1" placeholder="请输入密码" type="password"/>
</el-form-item>
<el-form-item label="确认密码" prop="pwd">
<el-input v-model="pwd2" placeholder="请再次输入密码" type="password"/>
......@@ -121,6 +121,7 @@ export default {
// 表单参数
form: {},
pwd2:null,
pwd1:null,
// 表单校验
rules: {
}
......@@ -191,12 +192,13 @@ export default {
if (!valid) {
return;
}
if(this.pwd2!==this.form.pwd){
if(this.pwd2!==this.pwd1){
this.$modal.alertError("两次密码输入不一致");
return;
}
// 修改的提交
if (this.form.id != null) {
this.form.pwd = this.pwd1;
updateBusiPwd(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
......
......@@ -6,47 +6,47 @@
<el-form ref="form" :model="form" :rules="rules" label-width="150px">
<el-row :gutter="10">
<el-col :span="12">
<el-form-item label="客户名称" prop="name">
<el-input v-model="form.name" placeholder="请输入客户名称" />
<el-form-item :label="$t('客户名称')" prop="name">
<el-input v-model="form.name" :placeholder="$t('请输入客户名称')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="国家" prop="country">
<el-select v-model="form.country" placeholder="请选择国家">
<el-form-item :label="$t('国家')" prop="country">
<el-select v-model="form.country" :placeholder="$t('请选择国家')">
<el-option v-for="dict in countryList"
:key="dict.id" :label="dict.nameZh" :value="parseInt(dict.id)" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="客户等级" prop="level">
<el-select v-model="form.level" placeholder="请选择客户等级" disabled>
<el-form-item :label="$t('客户等级')" prop="level">
<el-select v-model="form.level" :placeholder="$t('请选择客户等级')" disabled>
<el-option v-for="dict in getDictDatas(DICT_TYPE.CUSTOMER_LEVEL)"
:key="dict.value" :label="dict.label" :value="parseInt(dict.value)" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="联系地址" prop="address">
<el-input v-model="form.address" placeholder="请输入联系地址" />
<el-form-item :label="$t('联系地址')" prop="address">
<el-input v-model="form.address" :placeholder="$t('请输入联系地址')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="客户类别" prop="type">
<el-form-item :label="$t('客户类别')" prop="type">
<dict-selector :type="DICT_TYPE.CUSTOMER_TYPE" form-type="checkbox" multiple v-model="form.type"></dict-selector>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="常用提货网点" prop="pickupPoint">
<el-select v-model="form.pickupPoint" placeholder="请输入常用提货网点">
<el-form-item :label="$t('常用提货网点')" prop="pickupPoint">
<el-select v-model="form.pickupPoint" :placeholder="$t('请输入常用提货网点')">
<el-option v-for="node in nodeList"
:key="node.id" :label="node.titleZh" :value="node.id" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="13" v-show="form.type && form.type.indexOf('3') !== -1">
<el-form-item label="所属代理" prop="agentId">
<el-select v-model="form.agentId" placeholder="请选择所属代理">
<el-form-item :label="$t('所属代理')" prop="agentId">
<el-select v-model="form.agentId" :placeholder="$t('请选择所属代理')">
<el-option v-for="item in serviceUserList"
:key="item.id" :label="item.nickname" :value="item.id" />
</el-select>
......@@ -54,31 +54,31 @@
</el-col>
<el-col :span="12">
<el-form-item label="公司名称" prop="company">
<el-input v-model="form.company" placeholder="请输入公司名称" />
<el-form-item :label="$t('公司名称')" prop="company">
<el-input v-model="form.company" :placeholder="$t('请输入公司名称')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="客户生日" prop="birthday">
<el-form-item :label="$t('客户生日')" prop="birthday">
<el-date-picker
v-model="form.birthday"
type="date"
value-format="timestamp"
placeholder="请输入客户生日">
:placeholder="$t('请输入客户生日')">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="主营类别" prop="productType">
<el-form-item :label="$t('主营类别')" prop="productType">
<el-row :gutter="10">
<el-col :span="11">
<el-select v-model="form.productType" placeholder="请选择产品类别" @change="form.productId = ''">
<el-select v-model="form.productType" :placeholder="$t('请选择产品类别')" @change="form.productId = ''">
<el-option :label="item.titleZh" :value="item.id" v-for="(item) in productTypeList" :key="item.id"/>
</el-select>
</el-col>
<el-col :span="11">
<el-select v-model="form.productId" placeholder="请选择">
<el-select v-model="form.productId" :placeholder="$t('请选择')">
<el-option :label="item.titleZh" :value="parseInt(item.id)" v-for="(item) in productListFilter" :key="item.id"/>
</el-select>
</el-col>
......@@ -86,46 +86,46 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="客户来源" prop="source">
<el-select v-model="form.source" placeholder="请选择客户来源">
<el-form-item :label="$t('客户来源')" prop="source">
<el-select v-model="form.source" :placeholder="$t('请选择客户来源')">
<el-option v-for="dict in getDictDatas(DICT_TYPE.CUSTOMER_SOURCE)"
:key="dict.value" :label="dict.label" :value="parseInt(dict.value)" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="结算方式" prop="balance">
<el-select v-model="form.balance" placeholder="请选择结算方式">
<el-form-item :label="$t('结算方式')" prop="balance">
<el-select v-model="form.balance" :placeholder="$t('请选择结算方式')">
<el-option v-for="dict in getDictDatas(DICT_TYPE.CUSTOMER_BALANCE)"
:key="dict.value" :label="dict.label" :value="parseInt(dict.value)" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="客户经理" prop="customerService">
<el-select v-model="form.customerService" placeholder="请选择客户经理">
<el-form-item :label="$t('客户经理')" prop="customerService">
<el-select v-model="form.customerService" :placeholder="$t('请选择客户经理')">
<el-option v-for="item in serviceUserList"
:key="item.id" :label="item.nickname" :value="item.id" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="图片" prop="picture">
<el-form-item :label="$t('图片')" prop="picture">
<upload v-model="form.picture" :limit="1"></upload>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="客户状态" prop="status">
<el-select v-model="form.status" placeholder="请选择客户状态" disabled>
<el-form-item :label="$t('客户状态')" prop="status">
<el-select v-model="form.status" :placeholder="$t('请选择客户状态')" disabled>
<el-option v-for="dict in getDictDatas(DICT_TYPE.CUSTOMER_STATUS)"
:key="dict.value" :label="dict.label" :value="parseInt(dict.value)" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="推介人" prop="promoter">
<el-select v-model="form.promoter" placeholder="请输入推介人" filterable>
<el-form-item :label="$t('推介人')" prop="promoter">
<el-select v-model="form.promoter" :placeholder="$t('请输入推介人')" filterable>
<el-option
v-for="item in customerSelect"
:key="item.id"
......@@ -136,7 +136,7 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="创建人" prop="founder">
<el-form-item :label="$t('创建人')" prop="founder">
<el-select v-model="form.founder" disabled>
<el-option
v-for="item in serviceUserList"
......@@ -148,54 +148,54 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="创建时间" prop="createTime">
<el-form-item :label="$t('创建时间')" prop="createTime">
<el-date-picker
v-model="form.createTime"
type="datetime"
value-format="timestamp"
placeholder="选择创建时间">
:placeholder="$t('选择创建时间')">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="备注" prop="remarks">
<el-input v-model="form.remarks" placeholder="请输入备注"/>
<el-form-item :label="$t('备注')" prop="remarks">
<el-input v-model="form.remarks" :placeholder="$t('请输入备注')"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="是否显示提单价格" prop="remarks">
<el-form-item :label="$t('是否显示提单价格')" prop="remarks">
<el-switch v-model="form.isShowTidanPrice"></el-switch>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="到仓确认" prop="arrivalConfirm">
<el-form-item :label="$t('到仓确认')" prop="arrivalConfirm">
<el-switch v-model="form.arrivalConfirm" :active-value="0" :inactive-value="1" />
</el-form-item>
</el-col>
<el-col :span="13">
<el-form-item label="重货标准" prop="weightUnit">
<el-form-item :label="$t('重货标准')" prop="weightUnit">
<el-switch v-model="showZhong"/>
<el-input v-model="form.weightUnit" placeholder="请输入重货标准" v-show="showZhong">
<el-input v-model="form.weightUnit" :placeholder="$t('请输入重货标准')" v-show="showZhong">
<template slot="append">kg/cbm</template>
</el-input>
</el-form-item>
</el-col>
<el-col :span="24" v-show="showZhong">
<el-form-item label="指定线路" prop="line">
<el-form-item :label="$t('指定线路')" prop="line">
<el-switch v-model="showZhong1"></el-switch>
<customer-line-table v-show="showZhong1" :warehouse-list="warehouseList" :import-city-list="importCityList" v-model="zhongLines" :zhong-pao-type="0"></customer-line-table>
</el-form-item>
</el-col>
<el-col :span="13">
<el-form-item label="泡货标准" prop="weightUnit">
<el-form-item :label="$t('泡货标准')" prop="weightUnit">
<el-switch v-model="showPao"/>
<el-input v-model="form.lightUnit" placeholder="请输入泡货标准" v-show="showPao">
<el-input v-model="form.lightUnit" :placeholder="$t('请输入泡货标准')" v-show="showPao">
<template slot="append">kg/cbm</template>
</el-input>
</el-form-item>
</el-col>
<el-col :span="24" v-show="showPao">
<el-form-item label="指定线路" prop="line">
<el-form-item :label="$t('指定线路')" prop="line">
<el-switch v-model="showPao1"></el-switch>
<customer-line-table v-show="showPao1" :warehouse-list="warehouseList" :import-city-list="importCityList" v-model="paoLines" :zhong-pao-type="1"></customer-line-table>
</el-form-item>
......@@ -204,7 +204,7 @@
<el-card class="box-card">
<div slot="header" class="clearfix">
<span>联系人</span>
<span>{{$t('联系人')}}</span>
<el-button style="float: right;" size="small" type="primary" @click="handleAddContact">+</el-button>
</div>
<el-form ref="contactForm" :rules="contactRules" :model="form">
......@@ -214,49 +214,49 @@
>
<el-table-column
prop="department"
label="部门"
:label="$t('部门')"
width=""
>
<template v-slot="{ row }">
<el-form-item label="">
<el-input v-model="row.department" placeholder="请输入部门" size="mini"/>
<el-input v-model="row.department" :placeholder="$t('请输入部门')" size="mini"/>
</el-form-item>
</template>
</el-table-column>
<el-table-column
prop="position"
label="职位"
:label="$t('职位')"
width=""
>
<template v-slot="{row}">
<el-form-item label="">
<el-input v-model="row.position" placeholder="请输入职位" size="mini"/>
<el-input v-model="row.position" :placeholder="$t('请输入职位')" size="mini"/>
</el-form-item>
</template>
</el-table-column>
<el-table-column
prop="name"
label="联系人"
:label="$t('联系人')"
>
<template slot="header">
联系人 <span style="color: #ff0000">*</span>
{{$t('联系人')}} <span style="color: #ff0000">*</span>
</template>
<template v-slot="{row, cellValue, $index}">
<el-form-item :rules="contactRules.name" :prop="'customerContacts.' + $index + '.name'" label="">
<el-input v-model="row.name" placeholder="请输入联系人" size="mini"/>
<el-input v-model="row.name" :placeholder="$t('请输入联系人')" size="mini"/>
</el-form-item>
</template>
</el-table-column>
<el-table-column
prop="areaCode"
label="区号"
:label="$t('区号')"
>
<template slot="header">
区号 <span style="color: #ff0000">*</span>
{{$t('区号')}} <span style="color: #ff0000">*</span>
</template>
<template v-slot="{row, cellValue, $index}">
<el-form-item :rules="contactRules.areaCode" :prop="'customerContacts.' + $index + '.areaCode'" label="">
<el-select v-model="row.areaCode" placeholder="请选择区号" filterable size="mini">
<el-select v-model="row.areaCode" :placeholder="$t('请选择区号')" filterable size="mini">
<el-option v-for="(item, index) in countryList"
:key="index" :label="item.nameShort + item.nameZh + '(' + item.tel + ')'" :value="item.tel" />
</el-select>
......@@ -265,20 +265,20 @@
</el-table-column>
<el-table-column
prop="phoneNew"
label="联系方式"
:label="$t('联系方式')"
>
<template slot="header">
联系方式 <span style="color: #ff0000">*</span>
{{$t('联系方式')}} <span style="color: #ff0000">*</span>
</template>
<template v-slot="{row, cellValue, $index}">
<el-form-item :rules="contactRules.phoneNew" :prop="'customerContacts.' + $index + '.phoneNew'" label="">
<el-input v-model="row.phoneNew" placeholder="请输入联系方式" size="mini"/>
<el-input v-model="row.phoneNew" :placeholder="$t('请输入联系方式')" size="mini"/>
</el-form-item>
</template>
</el-table-column>
<el-table-column
prop=""
label="关联账号"
:label="$t('关联账号')"
>
<template v-slot = "{row}">
<el-form-item label="">
......@@ -290,11 +290,11 @@
</el-table-column>
<el-table-column
prop="social"
label="社交软件"
:label="$t('社交软件')"
>
<template v-slot="{row}">
<el-form-item label="">
<el-select v-model="row.social" placeholder="请选择社交软件" size="mini">
<el-select v-model="row.social" :placeholder="$t('请选择社交软件')" size="mini">
<el-option v-for="dict in getDictDatas(DICT_TYPE.SOCIAL)"
:key="dict.value" :label="dict.label" :value="parseInt(dict.value)" />
</el-select>
......@@ -303,31 +303,31 @@
</el-table-column>
<el-table-column
prop="socialNumber"
label="社交软件号码"
:label="$t('社交软件号码')"
>
<template v-slot="{row}">
<el-form-item label="">
<el-input v-model="row.socialNumber" placeholder="请输入社交软件号码" size="mini"/>
<el-input v-model="row.socialNumber" :placeholder="$t('请输入社交软件号码')" size="mini"/>
</el-form-item>
</template>
</el-table-column>
<el-table-column
prop="email"
label="邮箱"
:label="$t('邮箱')"
>
<template v-slot="{row}">
<el-form-item label="">
<el-input v-model="row.email" placeholder="请输入邮箱" size="mini"/>
<el-input v-model="row.email" :placeholder="$t('请输入邮箱')" size="mini"/>
</el-form-item>
</template>
</el-table-column>
<el-table-column
prop="isDefault"
label="设为默认"
:label="$t('设为默认')"
>
<template v-slot="{ row, column, $index }">
<el-form-item label="">
<el-select v-model="row.isDefault" placeholder="设为默认" @change="handleDefaultChange($index)" size="mini">
<el-select v-model="row.isDefault" :placeholder="$t('设为默认')" @change="handleDefaultChange($index)" size="mini">
<el-option v-for="dict in getDictDatas(DICT_TYPE.IS_DEFAULT)"
:key="dict.value" :label="dict.label" :value="Number(dict.value)" />
</el-select>
......@@ -336,11 +336,11 @@
</el-table-column>
<el-table-column
prop="name"
label="操作"
:label="$t('操作')"
>
<template v-slot="{ row, column, $index }">
<el-form-item label="">
<el-button type="danger" @click="handleDeleteContact($index)" size="mini">删除</el-button>
<el-button type="danger" @click="handleDeleteContact($index)" size="mini">{{$t('删除')}}</el-button>
</el-form-item>
</template>
</el-table-column>
......@@ -351,49 +351,49 @@
<el-row :gutter="10" style="margin-top: 15px">
<el-col :span="12">
<el-form-item label="发票抬头" prop="invoiceTitle">
<el-input v-model="form.invoiceTitle" placeholder="请输入发票抬头" />
<el-input v-model="form.invoiceTitle" :placeholder="$t('请输入发票抬头')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="纳税人识别号" prop="licenseNumber">
<el-input v-model="form.licenseNumber" placeholder="请输入纳税人识别号" />
<el-form-item :label="$t('纳税人识别号')" prop="licenseNumber">
<el-input v-model="form.licenseNumber" :placeholder="$t('请输入纳税人识别号')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="开户行" prop="bank">
<el-input v-model="form.bank" placeholder="请输入开户行" />
<el-form-item :label="$t('开户行')" prop="bank">
<el-input v-model="form.bank" :placeholder="$t('请输入开户行')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="账户" prop="bankNumber">
<el-input v-model="form.bankNumber" placeholder="请输入账户" />
<el-form-item :label="$t('账户')" prop="bankNumber">
<el-input v-model="form.bankNumber" :placeholder="$t('请输入账户')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="项目" prop="project">
<el-input v-model="form.project" placeholder="请输入项目" />
<el-form-item :label="$t('项目')" prop="project">
<el-input v-model="form.project" :placeholder="$t('请输入项目')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="开票地址" prop="billingAddress">
<el-input v-model="form.billingAddress" placeholder="请输入开票地址" />
<el-form-item :label="$t('开票地址')" prop="billingAddress">
<el-input v-model="form.billingAddress" :placeholder="$t('请输入开票地址')" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="开票电话" prop="billingTell">
<el-input v-model="form.billingTell" placeholder="请输入开票电话" maxlength="50" />
<el-form-item :label="$t('开票电话')" prop="billingTell">
<el-input v-model="form.billingTell" :placeholder="$t('请输入开票电话')" maxlength="50" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="税率" prop="taxRate">
<el-input v-model="form.taxRate" placeholder="请输入税率" />
<el-form-item :label="$t('税率')" prop="taxRate">
<el-input v-model="form.taxRate" :placeholder="$t('请输入税率')" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div style="text-align: center">
<el-button type="primary" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
<el-button type="primary" @click="submitForm">{{$t('确 定')}}</el-button>
<el-button @click="cancel">{{$t('取 消')}}</el-button>
</div>
</el-col>
</el-row>
......@@ -438,7 +438,7 @@ export default {
})
})
} else {
const obj = Object.assign({}, this.$route, { title: "自定义标题" })
const obj = Object.assign({}, this.$route, { title: this.$t('自定义标题') })
this.$tab.updatePage(obj);
this.$tab.updatePage({...this.$route, meta: {...this.$route.meta, name: 'abc'}})
}
......@@ -482,21 +482,21 @@ export default {
form: {},
// 表单校验
rules: {
name: [{ required: true, message: "客户名称不能为空", trigger: "blur" }],
country: [{ required: true, message: "国家不能为空", trigger: "blur" }],
level: [{ required: true, message: "客户等级不能为空", trigger: "blur" }],
type: [{ required: true, message: "客户类别不能为空", trigger: "blur" }],
createTime: [{ required: true, message: "创建时间不能为空", trigger: "blur" }],
source: [{ required: true, message: "客户来源不能为空", trigger: "blur" }],
customerService: [{ required: true, message: "客户经理不能为空", trigger: "blur" }],
status: [{ required: true, message: "客户状态不能为空", trigger: "blur" }],
founder: [{ required: true, message: "创建人不能为空", trigger: "blur" }],
name: [{ required: true, message: this.$t('客户名称不能为空'), trigger: "blur" }],
country: [{ required: true, message: this.$t('国家不能为空'), trigger: "blur" }],
level: [{ required: true, message: this.$t('客户等级不能为空'), trigger: "blur" }],
type: [{ required: true, message: this.$t('客户类别不能为空'), trigger: "blur" }],
createTime: [{ required: true, message: this.$t('创建时间不能为空'), trigger: "blur" }],
source: [{ required: true, message: this.$t('客户来源不能为空'), trigger: "blur" }],
customerService: [{ required: true, message: this.$t('客户经理不能为空'), trigger: "blur" }],
status: [{ required: true, message: this.$t('客户状态不能为空'), trigger: "blur" }],
founder: [{ required: true, message: this.$t('创建人不能为空'), trigger: "blur" }],
},
contactRules: {
name: [{ required: true, message: "请输入联系人", trigger: "blur" }],
areaCode: [{ required: true, message: "请选择区号", trigger: "change" }],
name: [{ required: true, message: this.$t('请输入联系人'), trigger: "blur" }],
areaCode: [{ required: true, message: this.$t('请选择区号'), trigger: "change" }],
phoneNew: [{
required: true,
trigger: "blur",
......@@ -526,7 +526,7 @@ export default {
methods: {
phoneValidator(rule, value, callback){
if (!value) {
return callback(new Error('请输入联系方式'));
return callback(new Error(this.$t('请输入联系方式')));
}
validatorMobile({
code: this.form.customerContacts.find(e => e.phoneNew === value).areaCode,
......@@ -535,17 +535,17 @@ export default {
if (r.data){
callback()
} else {
callback(new Error(r.msg || '手机号验证失败'))
callback(new Error(r.msg || this.$t('手机号验证失败')))
}
}).catch(e => {
console.error(e)
callback(new Error('手机号验证失败'))
callback(new Error(this.$t('手机号验证失败')))
})
},
handleDefaultChange($index){
// 只有一个联系人,设置成非默认
if (this.form.customerContacts.length === 1 && this.form.customerContacts[0].isDefault === 0){
this.$modal.msgWarning('至少拥有一个默认联系人')
this.$modal.msgWarning(this.$t('至少拥有一个默认联系人'))
this.form.customerContacts[0].isDefault = 1
return
}
......@@ -577,7 +577,7 @@ export default {
/** 提交按钮 */
submitForm() {
if(this.form.customerContacts.length === 0){
this.$modal.alert('至少添加一位联系人')
this.$modal.alert(this.$t('至少添加一位联系人'))
return
}
this.$refs["contactForm"].validate(valid1 => {
......@@ -586,7 +586,7 @@ export default {
return;
}
if (this.form.customerContacts.length === 0){
this.$modal.msgError("至少填写一个联系人信息");
this.$modal.msgError(this.$t('至少填写一个联系人信息'));
return
}
......@@ -599,25 +599,25 @@ export default {
})
updateCustomer(form).then(response => {
this.$modal.msgSuccess("修改成功");
this.$modal.msgSuccess(this.$t('修改成功'));
this.open = false;
// this.getList();
const obj = { path: "/customer/customer" };
this.$tab.closeOpenPage(obj);
}).catch(e => {
this.$modal.msgError(e.msg || '添加客户失败,请联系管理员')
this.$modal.msgError(e.msg || this.$t('添加客户失败,请联系管理员'))
});
return;
}
// 添加的提交
createCustomer(form).then(response => {
this.$modal.msgSuccess("新增成功");
this.$modal.msgSuccess(this.$t('新增成功'));
this.open = false;
// this.getList();
const obj = { path: "/customer/customer" };
this.$tab.closeOpenPage(obj);
}).catch(e => {
this.$modal.msgError(e.msg || '添加客户失败,请联系管理员')
this.$modal.msgError(e.msg || this.$t('添加客户失败,请联系管理员'))
});
});
})
......@@ -670,7 +670,7 @@ export default {
return getCustomer(id).then(response => {
this.form = { ...this.form, ...response.data, id: this.customerId };
this.open = true;
this.title = "修改客户";
this.title = this.$t('修改客户');
});
},
updateCustomerLines() {
......
......@@ -3,60 +3,60 @@
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="客户编号" prop="number">
<el-form-item :label="$t('客户编号')" prop="number">
<el-input v-model="queryParams.number" placeholder="请输入客户编号" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="客户名称" prop="name">
<el-form-item :label="$t('客户名称')" prop="name">
<el-input v-model="queryParams.name" placeholder="请输入客户名称" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="客户等级" prop="level">
<el-select clearable v-model="queryParams.level" placeholder="请选择客户等级" clearable size="small">
<el-form-item :label="$t('客户等级')" prop="level">
<el-select clearable v-model="queryParams.level" :placeholder="$t('请选择客户等级')" clearable size="small">
<el-option v-for="dict in getDictDatas(DICT_TYPE.CUSTOMER_LEVEL)"
:key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</el-form-item>
<el-form-item label="联系方式">
<el-input placeholder="请输入联系方式" v-model="queryParams.defaultContactPhone"></el-input>
<el-form-item :label="$t('联系方式')">
<el-input :placeholder="$t('请输入联系方式')" v-model="queryParams.defaultContactPhone"></el-input>
</el-form-item>
<el-form-item label="客户类别" prop="level">
<el-form-item :label="$t('客户类别')" prop="level">
<dict-selector :type="DICT_TYPE.CUSTOMER_TYPE" multiple v-model="queryParams.type"></dict-selector>
</el-form-item>
<el-form-item label="客户经理" prop="customerService">
<el-select clearable v-model="queryParams.customerService" placeholder="请选择客户经理" clearable size="small">
<el-form-item :label="$t('客户经理')" prop="customerService">
<el-select clearable v-model="queryParams.customerService" :placeholder="$t('请选择客户经理')" clearable size="small">
<el-option v-for="dict in customerServiceList"
:key="dict.id" :label="dict.nickname" :value="dict.id"/>
</el-select>
</el-form-item>
<el-form-item label="客户来源" prop="source">
<el-select clearable v-model="queryParams.source" placeholder="请选择客户来源" clearable size="small">
<el-form-item :label="$t('客户来源')" prop="source">
<el-select clearable v-model="queryParams.source" :placeholder="$t('请选择客户来源')" clearable size="small">
<el-option v-for="dict in getDictDatas(DICT_TYPE.CUSTOMER_SOURCE)"
:key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</el-form-item>
<el-form-item label="国家" prop="source">
<el-select clearable v-model="form.country" placeholder="请选择国家">
<el-form-item :label="$t('国家')" prop="source">
<el-select clearable v-model="form.country" :placeholder="$t('请选择国家')">
<el-option v-for="dict in countryList"
:key="dict.id" :label="dict.nameZh" :value="parseInt(dict.id)" />
</el-select>
</el-form-item>
<el-form-item label="客户状态" prop="status">
<el-select clearable v-model="queryParams.status" placeholder="请选择客户状态" clearable size="small">
<el-form-item :label="$t('客户状态')" prop="status">
<el-select clearable v-model="queryParams.status" :placeholder="$t('请选择客户状态')" clearable size="small">
<el-option v-for="dict in getDictDatas(DICT_TYPE.CUSTOMER_STATUS)"
:key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</el-form-item>
<el-form-item label="创建时间">
<el-form-item :label="$t('创建时间')">
<el-date-picker clearable v-model="dateRangeCreateTime" style="width: 240px" value-format="yyyy-MM-dd"
type="daterange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" />
type="daterange" range-separator="-" :start-placeholder="$t('开始日期')" :end-placeholder="$t('结束日期')" />
</el-form-item>
<el-form-item label="信用等级" prop="department">
<el-form-item :label="$t('信用等级')" prop="department">
<el-select clearable v-model="form.level" >
<el-option v-for="(item,index) in creditList" :label="item.nameZh" :key="index" :value="item.id" ></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">{{$t('重置')}}</el-button>
</el-form-item>
</el-form>
......@@ -64,15 +64,15 @@
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['ecw:customer:create']">新增</el-button>
v-hasPermi="['ecw:customer:create']">{{$t('新增')}}</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['ecw:customer:export']">导出</el-button>
v-hasPermi="['ecw:customer:export']">{{$t('导出')}}</el-button>
</el-col>
<el-col :span="1.5" >
<el-button :disabled="selectCustomerList.length === 0" type="primary" size="mini" @click="transferShow = true;" :loading="exportLoading"
v-hasPermi="['ecw:customer:export']">批量移交</el-button>
v-hasPermi="['ecw:customer:export']">{{$t('批量移交')}}</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
......@@ -83,39 +83,39 @@
type="selection"
width="55">
</el-table-column>
<el-table-column label="客户编号" align="center" prop="number" />
<el-table-column label="客户名称" align="center" prop="name" />
<el-table-column label="客户等级" align="center" prop="vipLevelNameZh">
<el-table-column :label="$t('客户编号')" align="center" prop="number" />
<el-table-column :label="$t('客户名称')" align="center" prop="name" />
<el-table-column :label="$t('客户等级')" align="center" prop="vipLevelNameZh">
<template slot-scope="scope">
<dict-tag :type="DICT_TYPE.CUSTOMER_LEVEL" :value="scope.row.level" />
</template>
</el-table-column>
<el-table-column label="信用等级" prop="creditLevelNameZh"></el-table-column>
<el-table-column label="客户状态" align="center" prop="status">
<el-table-column :label="$t('信用等级')" prop="creditLevelNameZh"></el-table-column>
<el-table-column :label="$t('客户状态')" align="center" prop="status">
<template slot-scope="scope">
<dict-tag :type="DICT_TYPE.CUSTOMER_STATUS" :value="scope.row.status" />
</template>
</el-table-column>
<el-table-column label="主联系人" prop="defaultContactName"></el-table-column>
<el-table-column label="主联系方式" prop="defaultContactPhone"></el-table-column>
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
<el-table-column :label="$t('主联系人')" prop="defaultContactName"></el-table-column>
<el-table-column :label="$t('主联系方式')" prop="defaultContactPhone"></el-table-column>
<el-table-column :label="$t('创建时间')" align="center" prop="createTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="客户经理" align="center" prop="customerService" :formatter="customerServiceFn">
<el-table-column :label="$t('客户经理')" align="center" prop="customerService" :formatter="customerServiceFn">
</el-table-column>
<el-table-column label="国家" align="center" prop="country" :formatter="countryFormatter"></el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<el-table-column :label="$t('国家')" align="center" prop="country" :formatter="countryFormatter"></el-table-column>
<el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-view" @click="handleView(scope.row)"
v-hasPermi="['ecw:customer:query']">查看</el-button>
v-hasPermi="['ecw:customer:query']">{{$t('查看')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['ecw:customer:update']">修改</el-button>
v-hasPermi="['ecw:customer:update']">{{$t('修改')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['ecw:customer:delete']">删除</el-button>
<el-button size="mini" type="text" icon="el-icon-collection" @click="followUp(scope.row)">跟进</el-button>
<el-button size="mini" type="text" icon="el-icon-user" @click="complaint(scope.row)">客诉</el-button>
v-hasPermi="['ecw:customer:delete']">{{$t('删除')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-collection" @click="followUp(scope.row)">{{$t('跟进')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-user" @click="complaint(scope.row)">{{$t('客诉')}}</el-button>
</template>
</el-table-column>
</el-table>
......@@ -465,8 +465,8 @@
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
<el-button type="primary" @click="submitForm">{{$t('确 定')}}</el-button>
<el-button @click="cancel">{{$t('取 消')}}</el-button>
</div>
</el-dialog>
<customer-follow-list :customer-id="customerId" :id="customerId" ref="CustomerFollowList"></customer-follow-list>
......@@ -534,15 +534,15 @@ export default {
form: {},
// 表单校验
rules: {
name: [{ required: true, message: "客户名称不能为空", trigger: "blur" }],
country: [{ required: true, message: "国家不能为空", trigger: "blur" }],
level: [{ required: true, message: "客户等级不能为空", trigger: "blur" }],
type: [{ required: true, message: "客户类别不能为空", trigger: "blur" }],
name: [{ required: true, message: this.$t('客户名称不能为空'), trigger: "blur" }],
country: [{ required: true, message: this.$t('国家不能为空'), trigger: "blur" }],
level: [{ required: true, message: this.$t('客户等级不能为空'), trigger: "blur" }],
type: [{ required: true, message: this.$t('客户类别不能为空'), trigger: "blur" }],
// createTime: [{ required: true, message: "创建时间不能为空", trigger: "blur" }],
source: [{ required: true, message: "客户来源不能为空", trigger: "blur" }],
customerService: [{ required: true, message: "客户经理不能为空", trigger: "blur" }],
status: [{ required: true, message: "客户状态不能为空", trigger: "blur" }],
founder: [{ required: true, message: "创建人不能为空", trigger: "blur" }],
source: [{ required: true, message: this.$t('客户来源不能为空'), trigger: "blur" }],
customerService: [{ required: true, message: this.$t('客户经理不能为空'), trigger: "blur" }],
status: [{ required: true, message: this.$t('客户状态不能为空'), trigger: "blur" }],
founder: [{ required: true, message: this.$t('创建人不能为空'), trigger: "blur" }],
},
// 网点
nodeList: [],
......@@ -684,7 +684,7 @@ export default {
// 修改的提交
if (this.form.id != null) {
updateCustomer(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.$modal.msgSuccess(this.$t('修改成功'));
this.open = false;
this.getList();
});
......@@ -692,7 +692,7 @@ export default {
}
// 添加的提交
createCustomer(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.$modal.msgSuccess(this.$t('新增成功'));
this.open = false;
this.getList();
});
......@@ -701,11 +701,11 @@ export default {
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal.confirm('是否确认删除客户编号为"' + id + '"的数据项?').then(function() {
this.$modal.confirm(this.$t('是否确认删除客户编号为"') + id + this.$t('"的数据项?')).then(function() {
return deleteCustomer(id);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
this.$modal.msgSuccess(this.$t('删除成功'));
}).catch(() => {});
},
/** 导出按钮操作 */
......@@ -716,13 +716,13 @@ export default {
params.pageSize = undefined;
this.addBeginAndEndTime(params, this.dateRangeCreateTime, 'createTime');
// 执行导出
this.$modal.confirm('是否确认导出所有客户数据项?').then(() => {
this.$modal.confirm(this.$t('是否确认导出所有客户数据项?')).then(() => {
this.exportLoading = true;
return exportCustomerExcel(params);
}).then(response => {
this.$download.excel(response, '客户信息.xls');
this.$download.excel(response, `${this.$t('客户信息')}.xls`);
console.log(response,'response')
this.$download.excel(response, '全部客户信息.xls');
this.$download.excel(response, `${this.$t('全部客户信息')}.xls`);
this.exportLoading = false;
}).catch(() => {});
},
......
......@@ -3,46 +3,46 @@
<el-row type="flex" style="margin-top: 15px;margin-bottom: 15px" justify="center">
<el-col :xs="24" :sm="24" :md="24" :lg="20" :xl="16">
<div style="display: flex;justify-content: space-between;align-items: flex-end;">
<h2>查看</h2>
<h2>{{$t('查看')}}</h2>
<div>
<el-button type="primary" size="small">添加优惠</el-button>
<el-button type="primary" size="small" @click="$router.push('/customer/edit/' + id)">编辑</el-button>
<el-button type="primary" size="small">报价</el-button>
<el-button type="primary" size="small" @click="$refs['customerFollow'].customerFollow.dialogVisible = true">跟进</el-button>
<el-button type="primary" size="small" @click="$refs['customerComplaint'].handleAdd()">客诉</el-button>
<el-button type="danger" size="small">删除</el-button>
<el-button type="primary" size="small">{{$t('添加优惠')}}</el-button>
<el-button type="primary" size="small" @click="$router.push('/customer/edit/' + id)">{{$t('编辑')}}</el-button>
<el-button type="primary" size="small">{{$t('报价')}}</el-button>
<el-button type="primary" size="small" @click="$refs['customerFollow'].customerFollow.dialogVisible = true">{{$t('跟进')}}</el-button>
<el-button type="primary" size="small" @click="$refs['customerComplaint'].handleAdd()">{{$t('客诉')}}</el-button>
<el-button type="danger" size="small">{{$t('删除')}}</el-button>
</div>
</div>
<el-card style="margin-top: 15px;">
<el-descriptions :column="4" border>
<el-descriptions-item label="客户编号">{{ customer.number }}</el-descriptions-item>
<el-descriptions-item label="客户名称">{{ customer.name }}</el-descriptions-item>
<el-descriptions-item label="结算方式">{{ getDictDataLabel(DICT_TYPE.CUSTOMER_BALANCE, customer.balance) }}</el-descriptions-item>
<el-descriptions-item label="客户生日">{{ parseTime(customer.birthday, '{y}-{m}-{d}') }}</el-descriptions-item>
<el-descriptions-item label="客户等级">{{ getDictDataLabel(DICT_TYPE.CUSTOMER_LEVEL, customer.level) }}</el-descriptions-item>
<el-descriptions-item label="国家">{{ getDictDataLabel(DICT_TYPE.COUNTRY, customer.country) }}</el-descriptions-item>
<!-- <el-descriptions-item label="业务员">{{ customer }}</el-descriptions-item>-->
<el-descriptions-item label="客户来源">{{ getDictDataLabel(DICT_TYPE.CUSTOMER_SOURCE, customer.source) }}</el-descriptions-item>
<el-descriptions-item label="客户类别">{{ getDictDataLabel(DICT_TYPE.CUSTOMER_TYPE, customer.type) }}</el-descriptions-item>
<!-- <el-descriptions-item label="联系方式">{{ customer }}</el-descriptions-item>-->
<el-descriptions-item label="推介人">{{ promoter }}</el-descriptions-item>
<el-descriptions-item label="客户经理">{{ customerService }}</el-descriptions-item>
<el-descriptions-item label="公司名称">{{ customer.company }}</el-descriptions-item>
<el-descriptions-item label="联系地址">{{ customer.address }}</el-descriptions-item>
<el-descriptions-item label="创建时间">{{ parseTime(customer.createTime) }}</el-descriptions-item>
<el-descriptions-item label="状态">{{ getDictDataLabel(DICT_TYPE.CUSTOMER_STATUS, customer.status) }}</el-descriptions-item>
<el-descriptions-item label="主营类别">{{ productType }}</el-descriptions-item>
<el-descriptions-item label="常提货网点">{{ pickupPoint }}</el-descriptions-item>
<el-descriptions-item label="图片">
<el-descriptions-item :label="$t('客户编号')">{{ customer.number }}</el-descriptions-item>
<el-descriptions-item :label="$t('客户名称')">{{ customer.name }}</el-descriptions-item>
<el-descriptions-item :label="$t('结算方式')">{{ getDictDataLabel(DICT_TYPE.CUSTOMER_BALANCE, customer.balance) }}</el-descriptions-item>
<el-descriptions-item :label="$t('客户生日')">{{ parseTime(customer.birthday, '{y}-{m}-{d}') }}</el-descriptions-item>
<el-descriptions-item :label="$t('客户等级')">{{ getDictDataLabel(DICT_TYPE.CUSTOMER_LEVEL, customer.level) }}</el-descriptions-item>
<el-descriptions-item :label="$t('国家')">{{ getDictDataLabel(DICT_TYPE.COUNTRY, customer.country) }}</el-descriptions-item>
<!-- <el-descriptions-item :label="$t('业务员')">{{ customer }}</el-descriptions-item>-->
<el-descriptions-item :label="$t('客户来源')">{{ getDictDataLabel(DICT_TYPE.CUSTOMER_SOURCE, customer.source) }}</el-descriptions-item>
<el-descriptions-item :label="$t('客户类别')">{{ getDictDataLabel(DICT_TYPE.CUSTOMER_TYPE, customer.type) }}</el-descriptions-item>
<!-- <el-descriptions-item :label="$t('联系方式')">{{ customer }}</el-descriptions-item>-->
<el-descriptions-item :label="$t('推介人')">{{ promoter }}</el-descriptions-item>
<el-descriptions-item :label="$t('客户经理')">{{ customerService }}</el-descriptions-item>
<el-descriptions-item :label="$t('公司名称')">{{ customer.company }}</el-descriptions-item>
<el-descriptions-item :label="$t('联系地址')">{{ customer.address }}</el-descriptions-item>
<el-descriptions-item :label="$t('创建时间')">{{ parseTime(customer.createTime) }}</el-descriptions-item>
<el-descriptions-item :label="$t('状态')">{{ getDictDataLabel(DICT_TYPE.CUSTOMER_STATUS, customer.status) }}</el-descriptions-item>
<el-descriptions-item :label="$t('主营类别')">{{ productType }}</el-descriptions-item>
<el-descriptions-item :label="$t('常提货网点')">{{ pickupPoint }}</el-descriptions-item>
<el-descriptions-item :label="$t('图片')">
<el-image v-show="!!customer.picture" :src="customer.picture" style="width: 100px;height: 100px"></el-image>
</el-descriptions-item>
<el-descriptions-item label="备注">{{ customer.remarks }}</el-descriptions-item>
<el-descriptions-item :label="$t('备注')">{{ customer.remarks }}</el-descriptions-item>
<!-- <el-descriptions-item label="信用等级">{{ customer }}</el-descriptions-item>-->
</el-descriptions>
</el-card>
<el-card style="margin-top: 15px">
<h3>联系人</h3>
<h3>{{$t('联系人')}}</h3>
<el-table
:data="customerContacts"
......@@ -51,22 +51,22 @@
>
<el-table-column
prop="department"
label="部门"
:label="$t('部门')"
>
</el-table-column>
<el-table-column
prop="position"
label="职位"
:label="$t('职位')"
>
</el-table-column>
<el-table-column
prop="name"
label="联系人"
:label="$t('联系人')"
>
</el-table-column>
<el-table-column
prop="phoneNew"
label="联系方式"
:label="$t('联系方式')"
>
<template v-slot="{row}">
{{ row.areaCode + row.phoneNew }}
......@@ -74,64 +74,64 @@
</el-table-column>
<el-table-column
prop="username"
label="关联账号"
:label="$t('关联账号')"
>
</el-table-column>
<el-table-column
prop="social"
label="社交软件"
:label="$t('社交软件')"
>
</el-table-column>
<el-table-column
prop="socialNumber"
label="社交软件号码"
:label="$t('社交软件号码')"
>
</el-table-column>
<el-table-column
prop="email"
label="邮箱"
:label="$t('邮箱')"
>
</el-table-column>
</el-table>
</el-card>
<el-tabs style="margin-top: 15px" type="border-card">
<el-tab-pane label="订单">
<el-tab-pane :label="$t('订单')">
<el-card class="box-card">
<div slot="header" class="clearfix">
<el-form :inline="true">
<el-form-item label="运输方式:">
<el-form-item :label="$t('运输方式:')">
<dict-selector :type="DICT_TYPE.ECW_TRANSPORT_TYPE" v-model="queryParams.transportType" formatter="number" />
</el-form-item>
<el-form-item label="订单状态:">
<el-form-item :label="$t('订单状态:')">
<dict-selector :type="DICT_TYPE.ORDER_STATUS" v-model="queryParams.status"/>
</el-form-item>
<el-form-item label="报关方式:">
<el-form-item :label="$t('报关方式:')">
<dict-selector
:type="DICT_TYPE.ECW_CUSTOMS_TYPE"
v-model="queryParams.customerType"
/>
</el-form-item>
<el-form-item label="控货">
<el-form-item :label="$t('控货')">
<dict-selector
:type="DICT_TYPE.INFRA_BOOLEAN_STRING"
v-model="queryParams.isCargoControl"
/>
</el-form-item>
<el-form-item label="入仓时间:">
<el-form-item :label="$t('入仓时间:')">
<el-date-picker v-model="rucangtime"
@change="changeDate"
style="width: 240px"
value-format="yyyy-MM-dd HH:mm:ss"
type="daterange"
range-separator="-"
start-placeholder="开始日期" end-placeholder="结束日期" />
:start-placeholder="$t('开始日期')" :end-placeholder="$t('结束日期')" />
</el-form-item>
<el-form-item>
<el-button type="primary" @click="getorderList">搜索</el-button>
<el-button type="primary" @click="getorderList">{{$t('搜索')}}</el-button>
<el-button type="primary" @click="()=>{
queryParams = { rows:10,page:1}; getorderList()
}">重置</el-button>
}">{{$t('重置')}}</el-button>
</el-form-item>
</el-form>
</div>
......@@ -176,38 +176,38 @@
<pagination @pagination="getorderList" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize" :total="orderTotal" ></pagination>
</el-card>
</el-tab-pane>
<el-tab-pane label="报价">
<el-tab-pane :label="$t('报价')">
<el-table
:data="infoListOfferList"
style="width: 100%"
>
<el-table-column
type="index"
label="序号"
:label="$t('序号')"
>
</el-table-column>
<el-table-column
prop="number"
label="报价单号"
:label="$t('报价单号')"
>
</el-table-column>
<el-table-column
prop="orderNo"
label="订单号"
:label="$t('订单号')"
>
</el-table-column>
<el-table-column
prop="consignorName"
label="客户名称"
:label="$t('客户名称')"
>
</el-table-column>
<el-table-column
prop="objectiveName"
label="目的地"
:label="$t('目的地')"
>
</el-table-column>
<el-table-column
label="销售阶段"
:label="$t('销售阶段')"
>
<template v-slot="{row}">
{{STATUS[row.status]}}
......@@ -215,84 +215,84 @@
</el-table-column>
<el-table-column
prop="stopTime"
label="预计结束时间"
:label="$t('预计结束时间')"
>
</el-table-column>
<el-table-column
prop="businessManagerName"
label="负责人"
:label="$t('负责人')"
>
</el-table-column>
</el-table>
<pagination @pagination="getInfoListOfferPage" :page.sync="infoListOfferFrom.pageNo" :limit.sync="infoListOfferFrom.pageSize" :total="infoListOfferTotal" ></pagination>
</el-tab-pane>
<el-tab-pane label="跟进">
<el-tab-pane :label="$t('跟进')">
<customer-follow ref="customerFollow" :id="id" :customer-id="id"></customer-follow>
</el-tab-pane>
<el-tab-pane label="客户投诉">
<el-tab-pane :label="$t('客户投诉')">
<customer-complaint ref="customerComplaint" :customer-id="id" hidden-search></customer-complaint>
</el-tab-pane>
<el-tab-pane label="账单">
<el-tab-pane :label="$t('账单')">
<el-table style="width: 100%" :data="infoListReceiptList">
<el-table-column label="序号" type="index"></el-table-column>
<el-table-column label="账单" prop="receiptNo"></el-table-column>
<el-table-column label="订单号" prop="orderNo"></el-table-column>
<el-table-column label="箱数" prop="num"></el-table-column>
<el-table-column label="方数" prop="volume" ></el-table-column>
<el-table-column label="重量" prop="weight" ></el-table-column>
<el-table-column label="类型">
<el-table-column :label="$t('序号')" type="index"></el-table-column>
<el-table-column :label="$t('账单')" prop="receiptNo"></el-table-column>
<el-table-column :label="$t('订单号')" prop="orderNo"></el-table-column>
<el-table-column :label="$t('箱数')" prop="num"></el-table-column>
<el-table-column :label="$t('方数')" prop="volume" ></el-table-column>
<el-table-column :label="$t('重量')" prop="weight" ></el-table-column>
<el-table-column :label="$t('类型')">
<template v-slot="{row}">
<dict-tag :type="DICT_TYPE.PAYMENT_TYPE" :value="row.collectionType" />
</template>
</el-table-column>
<el-table-column label="费用类型">
<el-table-column :label="$t('费用类型')">
<template v-slot="{row}">
<dict-tag :type="DICT_TYPE.FEE_TYPE" :value="row.feeType" />
</template>
</el-table-column>
<el-table-column label="金额" prop="totalAmount">
<el-table-column :label="$t('金额')" prop="totalAmount">
</el-table-column>
<el-table-column label="已核销比例" prop="writeOffScale"></el-table-column>
<el-table-column label="实收日期" prop="writeOffAt"></el-table-column>
<el-table-column label="业务员" prop="salesmanName"></el-table-column>
<el-table-column :label="$t('已核销比例')" prop="writeOffScale"></el-table-column>
<el-table-column :label="$t('实收日期')" prop="writeOffAt"></el-table-column>
<el-table-column :label="$t('业务员')" prop="salesmanName"></el-table-column>
</el-table>
</el-tab-pane>
<el-tab-pane label="数据">
<el-tab-pane :label="$t('数据')">
<el-descriptions :column="2">
<el-descriptions-item label="海空联运/海运拼柜/海运整柜/专线空运">{{orderStatisticsObj.hklyTotal || 0}}/{{orderStatisticsObj.hypgTotal || 0 }}/{{orderStatisticsObj.hyzgTotal || 0}}/{{orderStatisticsObj.zxkyTotal || 0}}</el-descriptions-item>
<el-descriptions-item label="最后交易日期">{{orderStatisticsObj.lastBusinessDate}}</el-descriptions-item>
<el-descriptions-item label="全部订单/控货订单">{{orderStatisticsObj.allOrderTotal || 0}}/{{orderStatisticsObj.controlOrderTotal || 0}}</el-descriptions-item>
<el-descriptions-item label="最后交易单号">{{orderStatisticsObj.lastBusinessOrderNo}}</el-descriptions-item>
<el-descriptions-item label="报价/下单/入仓">{{orderStatisticsObj.offerOrderTotal || 0}}/{{orderStatisticsObj.pickOrderTotal || 0}}/{{orderStatisticsObj.wareHousingTotal || 0}}</el-descriptions-item>
<el-descriptions-item label="储存量">{{orderStatisticsObj.stock || 0}}</el-descriptions-item>
<el-descriptions-item label="已出货订单">{{orderStatisticsObj.shipmentTotal || 0}}</el-descriptions-item>
<el-descriptions-item :label="$t('海空联运/海运拼柜/海运整柜/专线空运')">{{orderStatisticsObj.hklyTotal || 0}}/{{orderStatisticsObj.hypgTotal || 0 }}/{{orderStatisticsObj.hyzgTotal || 0}}/{{orderStatisticsObj.zxkyTotal || 0}}</el-descriptions-item>
<el-descriptions-item :label="$t('最后交易日期')">{{orderStatisticsObj.lastBusinessDate}}</el-descriptions-item>
<el-descriptions-item :label="$t('全部订单/控货订单')">{{orderStatisticsObj.allOrderTotal || 0}}/{{orderStatisticsObj.controlOrderTotal || 0}}</el-descriptions-item>
<el-descriptions-item :label="$t('最后交易单号')">{{orderStatisticsObj.lastBusinessOrderNo}}</el-descriptions-item>
<el-descriptions-item :label="$t('报价/下单/入仓')">{{orderStatisticsObj.offerOrderTotal || 0}}/{{orderStatisticsObj.pickOrderTotal || 0}}/{{orderStatisticsObj.wareHousingTotal || 0}}</el-descriptions-item>
<el-descriptions-item :label="$t('储存量')">{{orderStatisticsObj.stock || 0}}</el-descriptions-item>
<el-descriptions-item :label="$t('已出货订单')">{{orderStatisticsObj.shipmentTotal || 0}}</el-descriptions-item>
</el-descriptions>
</el-tab-pane>
<el-tab-pane label="品牌授权">
<el-tab-pane :label="$t('品牌授权')">
<el-table border style="width:100%" :data="brandAuthorizationList">
<el-table-column type="index" prop="序号"></el-table-column>
<el-table-column label="中文标题" prop="titleZh" ></el-table-column>
<el-table-column prop="titleEn" label="英文标题"></el-table-column>
<el-table-column label="有无备案">
<el-table-column type="index" :prop="$t('序号')"></el-table-column>
<el-table-column :label="$t('中文标题')" prop="titleZh" ></el-table-column>
<el-table-column prop="titleEn" :label="$t('英文标题')"></el-table-column>
<el-table-column :label="$t('有无备案')">
<template v-slot="{row}">
<dict-tag :type="DICT_TYPE.BRAND_REG_TYPE" :value="row.filing" />
</template>
</el-table-column>
<el-table-column label="授权开始">
<el-table-column :label="$t('授权开始')">
<template v-slot="{row}">
{{parseTime(row.startTime)}}
</template>
</el-table-column>
<el-table-column label="授权结束">
<el-table-column :label="$t('授权结束')">
<template v-slot="{row}">
{{parseTime(row.endTime)}}
</template>
</el-table-column>
<el-table-column label="授权证明">
<el-table-column :label="$t('授权证明')">
<template v-slot="{row}">
<div v-if="!!row.fileUrl && row.fileUrl.length > 0">
<span v-for="(item, index) in row.fileUrl.split(',')">
<a :href="item" target="_blank">附件{{ index + 1 }}</a>,
<a :href="item" target="_blank">{{$t('附件')}}{{ index + 1 }}</a>,
</span>
</div>
</template>
......@@ -300,13 +300,13 @@
<el-table-column
prop="feeScale"
:formatter="(row) => getDictDataLabel(DICT_TYPE.BRAND_CUSTOMER_CHARGING_MODEL, row.feeScale)"
label="收费标准">
:label="$t('收费标准')">
</el-table-column>
<el-table-column
prop="createUsername"
label="添加人">
:label="$t('添加人')">
</el-table-column>
<el-table-column label="创建时间">
<el-table-column :label="$t('创建时间')">
<template v-slot="{row}">
{{parseTime(row.createTime)}}
</template>
......@@ -315,26 +315,26 @@
<pagination v-show="brandAuthorizationTotal > 0" :total="brandAuthorizationTotal" :page.sync="brandAuthorizationFrom.pageNo" :limit.sync="brandAuthorizationFrom.pageSize"
@pagination="getBrankByCustomerList"/>
</el-tab-pane>
<el-tab-pane label="信用日志">
<el-tab-pane :label="$t('信用日志')">
<el-card class="box-card">
<div slot="header" class="clearfix">
<el-button style="float: right;" type="primary" @click="dialogVisible = true" >添加信用日志</el-button>
<el-button style="float: right;" type="primary" @click="dialogVisible = true" >{{$t('添加信用日志')}}</el-button>
<el-descriptions :column="5" border>
<el-descriptions-item v-for="(item,index) in creditScoreStatisticObj" :key="index" :label="creditScoreCalculation(item.type)">{{item.score}}</el-descriptions-item>
</el-descriptions>
</div>
<el-table :data="customerCreditLogList">
<el-table-column label="序号" type="index"></el-table-column>
<el-table-column prop="name" label="规则名称"></el-table-column>
<el-table-column prop="type" label="规则分类">
<el-table-column :label="$t('序号')" type="index"></el-table-column>
<el-table-column prop="name" :label="$t('规则名称')"></el-table-column>
<el-table-column prop="type" :label="$t('规则分类')">
<template v-slot="{row}">
<dict-tag :type="DICT_TYPE.CUSTOMER_CREDIT_RULE_TYPE" :value="row.type" />
</template>
</el-table-column>
<el-table-column prop="score" label="规则得分"></el-table-column>
<el-table-column prop="remark" label="备注"></el-table-column>
<el-table-column label="添加人" prop="createName"></el-table-column>
<el-table-column label="时间">
<el-table-column prop="score" :label="$t('规则得分')"></el-table-column>
<el-table-column prop="remark" :label="$t('备注')"></el-table-column>
<el-table-column :label="$t('添加人')" prop="createName"></el-table-column>
<el-table-column :label="$t('时间')">
<template v-slot="{row}">
{{parseTime(row.createTime)}}
</template>
......@@ -343,18 +343,18 @@
<pagination @pagination="creditLogPage" :page.sync="customerCreditLogFrom.pageNo" :limit.sync="customerCreditLogFrom.pageSize" :total="customerCreditLogFrom.total" ></pagination>
</el-card>
</el-tab-pane>
<el-tab-pane label="等级日志">
<el-tab-pane :label="$t('等级日志')">
<el-table style="width: 100%" :data="getCustomerGradeList">
<el-table-column label="序号" type="index"></el-table-column>
<el-table-column label="规则名称" prop="name"></el-table-column>
<el-table-column label="规则分类" prop="type">
<el-table-column :label="$t('序号')" type="index"></el-table-column>
<el-table-column :label="$t('规则名称')" prop="name"></el-table-column>
<el-table-column :label="$t('规则分类')" prop="type">
<template v-slot="{row}">
<dict-tag :type="DICT_TYPE.CUSTOMER_LEVEL_RULE_TYPE" :value="row.type" />
</template>
</el-table-column>
<el-table-column label="规则得分" prop="score"></el-table-column>
<el-table-column label="备注" prop="remark"></el-table-column>
<el-table-column label="时间">
<el-table-column :label="$t('规则得分')" prop="score"></el-table-column>
<el-table-column :label="$t('备注')" prop="remark"></el-table-column>
<el-table-column :label="$t('时间')">
<template v-slot="{row}">
{{parseTime(row.createTime)}}
</template>
......@@ -370,23 +370,23 @@
width="30%"
>
<h1 slot="title">
给客户【{{customer.name}}】添加信用日志
{{$t('给客户')}}{{customer.name}}{{$t('添加信用日志')}}
</h1>
<el-form label-width="100">
<el-form-item label="客户编号:">{{customer.number}}</el-form-item>
<el-form-item label="信用类别">
<el-form-item :label="$t('客户编号:')">{{customer.number}}</el-form-item>
<el-form-item :label="$t('信用类别')">
<el-select v-model="creditFrom.ruleId">
<el-option v-for="(item,index) in creditTypeList" :key="index" :value="item.id" :label="item.name"></el-option>
</el-select>
</el-form-item>
<el-form-item v-if="creditTypeList.length > 0" label="信用分">{{(creditTypeList.find(r=>creditFrom.ruleId === r.id) || {}).score }}</el-form-item>
<el-form-item label="备注">
<el-form-item v-if="creditTypeList.length > 0" :label="$t('信用分')">{{(creditTypeList.find(r=>creditFrom.ruleId === r.id) || {}).score }}{{$t('')}}</el-form-item>
<el-form-item :label="$t('备注')">
<el-input type="textarea" v-model="creditFrom.remark"> </el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="submit">提交</el-button>
<el-button @click="dialogVisible = false" >取消</el-button>
<el-button @click="submit">{{$t('提交')}}</el-button>
<el-button @click="dialogVisible = false" >{{$t('取消')}}</el-button>
</span>
</el-dialog>
</div>
......@@ -465,13 +465,13 @@ export default {
data() {
return {
STATUS:{
0:'取消报价',
1:'特价审批中',
2:'需求确认',
3:'跟进中',
4:'赢单',
5:'输单',
6:'报价完成'
0:this.$t('取消报价'),
1:this.$t('特价审批中'),
2:this.$t('需求确认'),
3:this.$t('跟进中'),
4:this.$t('赢单'),
5:this.$t('输单'),
6:this.$t('报价完成')
},
dialogVisible:false,
DICT_TYPE,
......@@ -583,7 +583,7 @@ export default {
creditScoreCalculation(){
return (val)=>{
if(val === 'all'){
return '信用分'
return this.$t('信用分')
}else{
return (this.getDictDatas(DICT_TYPE.CUSTOMER_CREDIT_RULE_TYPE).find(i => i.value === val)||{}).label
}
......@@ -636,11 +636,9 @@ export default {
// 客户报价
getInfoListOfferPage(){
infoListOfferPage({...this.infoListOfferFrom,customerId:this.id}).then(r => {
console.log(r,'报价')
this.infoListOfferList = r.data.list;
this.infoListOfferTotal = r.data.total;
}).catch(r => {
console.log(r,'报价')
})
},
// 数据
......
<template>
<el-dialog
center
title="客服"
:title="$t('客服')"
:visible.sync="show"
width="30%">
<div style="width: 100%;min-height: 200px;text-align: center">
......@@ -10,8 +10,8 @@
</el-select>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="$emit('update:show',false)" >取 消</el-button>
<el-button type="primary" @click="submit">确 定</el-button>
<el-button @click="$emit('update:show',false)" >{{$t('取 消')}}</el-button>
<el-button type="primary" @click="submit">{{$t('确 定')}}</el-button>
</span>
</el-dialog>
</template>
......@@ -50,7 +50,7 @@ export default {
methods:{
submit(){
if(!this.service){
return this.$message.warning('请选择客户经理!');
return this.$message.warning(this.$t('请选择客户经理!'));
}
handOverCustomer({
customerServiceId:this.service,
......@@ -59,7 +59,7 @@ export default {
if(r.code === 0){
this.$emit('update:show',false)
this.$emit('update:customerIds',[])
this.$message.success('用户批量转移成功!')
this.$message.success(this.$t('用户批量转移成功!'))
}
})
},
......
......@@ -84,7 +84,6 @@
label-width="0"
style="margin-bottom: 0"
prop="remark"
:rules="{ required: true, trigger: ['blur', 'change'], message: '备注不能为空' }"
>
<el-input v-model="form.remark" placeholder="备注"></el-input>
</el-form-item>
......@@ -136,7 +135,9 @@
</el-table-column>
<el-table-column label="优惠金额" align="center">
<template slot-scope="scope">
{{ scope.row.discountTotal ? `${scope.row.discountTotal}(${scope.row.discountRemark})` : 0 }}
<span> {{ scope.row.discountTotal ? `${scope.row.discountTotal}`:0}}</span>
<dict-tag :type="DICT_TYPE.BOX_SHIPPING_PRICE_UNIT" :value="scope.row.currencyId" />
<span>{{scope.row.discountRemark?('('+scope.row.discountRemark+')'): '' }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center">
......@@ -608,10 +609,10 @@
{{ selectListRow.totalAmount - (discountForm.discountTotal || 0) }}
<dict-tag :type="DICT_TYPE.BOX_SHIPPING_PRICE_UNIT" :value="selectListRow.currencyId" />
</el-form-item>
<el-form-item label="操作人">
<el-form-item v-if="opnotice" label="操作人">
{{ discountForm.author }}
</el-form-item>
<el-form-item label="操作时间">
<el-form-item v-if="opnotice" label="操作时间">
{{ discountForm.time }}
</el-form-item>
</el-form>
......@@ -657,6 +658,7 @@ export default {
list: [],
// fileList: [],
orderData: [],
opnotice:false,
dialogTableKey: 0,
total: 0,
headers: {
......@@ -1022,12 +1024,23 @@ export default {
this.$set(this.discountForm, 'discountTotal', res.data.discountTotal)
this.$set(this.discountForm, 'discountRemark', res.data.discountRemark)
this.$set(this.discountForm, 'author', res.data.creatorName)
this.opnotice = true
}else{
this.opnotice = false
}
})
},
saveDiscount() {
console.log(this.discountForm)
// this.selectListRow.id
if (this.discountForm.discountTotal === 0||!this.discountForm.discountTotal) {
this.$modal.msgError("优惠金额不能为空");
return
}
if (this.discountForm.discountRemark === 0||!this.discountForm.discountRemark) {
this.$modal.msgError("优惠原因不能为空");
return
}
const params = {
id: this.selectListRow.id,
discountTotal: this.discountForm.discountTotal,
......@@ -1075,7 +1088,8 @@ export default {
this.open = false;
},
submitForm(addType) {
const params = {...this.form, addType}
const params = {...this.form}
params.addType = addType
params.receiptAccountList.length = params.receiptAccountList.length - 1
params.receiptAccountList.map(v => {
delete v.discountTotal
......
......@@ -107,7 +107,7 @@
<el-option
v-for="item in bankData"
:key="item.id"
:label="item.baAccountName + '(' + item.baAccountNum + ')'"
:label="item.bankName + '(' + item.bankNameAccount+ ')'"
:value="item.id"
/>
</el-select>
......@@ -414,7 +414,6 @@ import { DICT_TYPE } from "@/utils/dict";
import { getToken } from "@/utils/auth";
import { getChannelList } from "@/api/ecw/channel";
import CustomerSelector from "@/components/CustomerSelector";
import { getBankAccountPage } from "@/api/ecw/bankAccount";
import { listSimpleDepts } from "@/api/system/dept";
import { getTradeCityList } from "@/api/ecw/region";
import { getSupplierPage } from "@/api/ecw/supplier";
......@@ -482,9 +481,9 @@ export default {
listSimpleUsers().then((res) => (that.creatorData = res.data));
getChannelList().then((res) => (that.channelList = res.data));
getTradeCityList().then((res) => (that.tradeCityList = res.data));
getBankAccountPage(that.params).then(
(res) => (that.bankData = res.data.list)
);
// getBankAccountPage(that.params).then(
// (res) => (that.bankData = res.data.list)
// );
getSupplierPage({ pageNo: "1", pageSize: "10000" }).then((res) => {
const { data } = res;
this.allSupplier = data.list;
......@@ -595,7 +594,9 @@ export default {
},
selectChange(val) {
const t = this.allSupplier.find(v => v.id == val)
t && (this.form.supplierName = t.companyZh)
t && (this.bankData = t.bankList)
},
handleQuery() {},
handleSelectionChange(val) {
......
......@@ -4,60 +4,60 @@
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="客户编号" prop="number">
<el-form-item :label="$t('客户编号')" prop="number">
<el-input v-model="queryParams.number" placeholder="请输入客户编号" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="客户名称" prop="name">
<el-form-item :label="$t('客户名称')" prop="name">
<el-input v-model="queryParams.name" placeholder="请输入客户名称" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="客户等级" prop="level">
<el-form-item :label="$t('客户等级')" prop="level">
<el-select clearable v-model="queryParams.level" placeholder="请选择客户等级" clearable size="small">
<el-option v-for="dict in getDictDatas(DICT_TYPE.CUSTOMER_LEVEL)"
:key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</el-form-item>
<el-form-item label="联系方式">
<el-input placeholder="请输入联系方式" v-model="queryParams.defaultContactPhone"></el-input>
<el-form-item :label="$t('联系方式')">
<el-input :placeholder="$t('请输入联系方式')" v-model="queryParams.defaultContactPhone"></el-input>
</el-form-item>
<el-form-item label="客户类别" prop="level">
<el-form-item :label="$t('客户类别')" prop="level">
<dict-selector :type="DICT_TYPE.CUSTOMER_TYPE" multiple v-model="queryParams.type"></dict-selector>
</el-form-item>
<el-form-item label="客户经理" prop="customerService">
<el-select clearable v-model="queryParams.customerService" placeholder="请选择客户经理" clearable size="small">
<el-form-item :label="$t('客户经理')" prop="customerService">
<el-select clearable v-model="queryParams.customerService" :placeholder="$t('请选择客户经理')" clearable size="small">
<el-option v-for="dict in customerServiceList"
:key="dict.id" :label="dict.nickname" :value="dict.id"/>
</el-select>
</el-form-item>
<el-form-item label="客户来源" prop="source">
<el-select clearable v-model="queryParams.source" placeholder="请选择客户来源" clearable size="small">
<el-form-item :label="$t('客户来源')" prop="source">
<el-select clearable v-model="queryParams.source" :placeholder="$t('请选择客户来源')" clearable size="small">
<el-option v-for="dict in getDictDatas(DICT_TYPE.CUSTOMER_SOURCE)"
:key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</el-form-item>
<el-form-item label="国家" prop="source">
<el-select clearable v-model="form.country" placeholder="请选择国家">
<el-form-item :label="$t('国家')" prop="source">
<el-select clearable v-model="form.country" :placeholder="$t('请选择国家')">
<el-option v-for="dict in countryList"
:key="dict.id" :label="dict.nameZh" :value="parseInt(dict.id)" />
</el-select>
</el-form-item>
<el-form-item label="客户状态" prop="status">
<el-select clearable v-model="queryParams.status" placeholder="请选择客户状态" clearable size="small">
<el-form-item :label="$t('客户状态')" prop="status">
<el-select clearable v-model="queryParams.status" :placeholder="$t('请选择客户状态')" clearable size="small">
<el-option v-for="dict in getDictDatas(DICT_TYPE.CUSTOMER_STATUS)"
:key="dict.value" :label="dict.label" :value="dict.value"/>
</el-select>
</el-form-item>
<el-form-item label="创建时间">
<el-form-item :label="$t('创建时间')">
<el-date-picker clearable v-model="dateRangeCreateTime" style="width: 240px" value-format="yyyy-MM-dd"
type="daterange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" />
type="daterange" range-separator="-" :start-placeholder="$t('开始日期')" :end-placeholder="$t('结束日期')" />
</el-form-item>
<el-form-item label="信用等级" prop="department">
<el-form-item :label="$t('信用等级')" prop="department">
<el-select clearable v-model="form.level" >
<el-option v-for="(item,index) in creditList" :label="item.nameZh" :key="index" :value="item.id" ></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">{{$t('重置')}}</el-button>
</el-form-item>
</el-form>
......@@ -65,15 +65,15 @@
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['ecw:customer:create']">新增</el-button>
v-hasPermi="['ecw:customer:create']">{{$t('新增')}}</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['ecw:customer:export']">导出</el-button>
v-hasPermi="['ecw:customer:export']">{{$t('导出')}}</el-button>
</el-col>
<el-col :span="1.5">
<el-button :disabled="selectCustomerList.length === 0" type="primary" size="mini" @click="show = true;" :loading="exportLoading"
v-hasPermi="['ecw:customer:export']">批量移交</el-button>
v-hasPermi="['ecw:customer:export']">{{$t('批量移交')}}</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
......@@ -84,40 +84,40 @@
type="selection"
width="55">
</el-table-column>
<el-table-column label="客户编号" align="center" prop="number" />
<el-table-column label="客户名称" align="center" prop="name" />
<el-table-column label="客户等级" align="center" prop="vipLevelNameZh">
<el-table-column :label="$t('客户编号')" align="center" prop="number" />
<el-table-column :label="$t('客户名称')" align="center" prop="name" />
<el-table-column :label="$t('客户等级')" align="center" prop="vipLevelNameZh">
<template slot-scope="scope">
<dict-tag :type="DICT_TYPE.CUSTOMER_LEVEL" :value="scope.row.level" />
</template>
</el-table-column>
<el-table-column label="信用等级" prop="creditLevelNameZh"></el-table-column>
<el-table-column label="客户状态" align="center" prop="status">
<el-table-column :label="$t('信用等级')" prop="creditLevelNameZh"></el-table-column>
<el-table-column :label="$t('客户状态')" align="center" prop="status">
<template slot-scope="scope">
<dict-tag :type="DICT_TYPE.CUSTOMER_STATUS" :value="scope.row.status" />
</template>
</el-table-column>
<el-table-column label="主联系人" prop="defaultContactName"></el-table-column>
<el-table-column label="主联系方式" prop="defaultContactPhone"></el-table-column>
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
<el-table-column :label="$t('主联系人')" prop="defaultContactName"></el-table-column>
<el-table-column :label="$t('主联系方式')" prop="defaultContactPhone"></el-table-column>
<el-table-column :label="$t('创建时间')" align="center" prop="createTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="客户经理" align="center" prop="customerService" :formatter="customerServiceFn">
<el-table-column :label="$t('客户经理')" align="center" prop="customerService" :formatter="customerServiceFn">
</el-table-column>
<el-table-column label="国家" align="center" prop="country" :formatter="countryFormatter"></el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<el-table-column :label="$t('国家')" align="center" prop="country" :formatter="countryFormatter"></el-table-column>
<el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-view" @click="handleView(scope.row)"
v-hasPermi="['ecw:customer:query']">查看</el-button>
v-hasPermi="['ecw:customer:query']">{{$t('查看')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['ecw:customer:update']">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-collection" @click="followUp(scope.row)">跟进</el-button>
v-hasPermi="['ecw:customer:update']">{{$t('修改')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-collection" @click="followUp(scope.row)">{{$t('跟进')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-user"
v-hasPermi="['ecw:customer:update']" @click="complaint(scope.row)">客诉</el-button>
v-hasPermi="['ecw:customer:update']" @click="complaint(scope.row)">{{$t('客诉')}}</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['ecw:customer:delete']">删除</el-button>
v-hasPermi="['ecw:customer:delete']">{{$t('删除')}}</el-button>
</template>
</el-table-column>
</el-table>
......@@ -188,14 +188,14 @@ export default {
form: {},
// 表单校验
rules: {
name: [{ required: true, message: "客户名称不能为空", trigger: "blur" }],
country: [{ required: true, message: "国家不能为空", trigger: "blur" }],
level: [{ required: true, message: "客户等级不能为空", trigger: "blur" }],
type: [{ required: true, message: "客户类别不能为空", trigger: "blur" }],
name: [{ required: true, message: this.$t('客户名称不能为空'), trigger: "blur" }],
country: [{ required: true, message: this.$t('国家不能为空'), trigger: "blur" }],
level: [{ required: true, message: this.$t('客户等级不能为空'), trigger: "blur" }],
type: [{ required: true, message: this.$t('客户类别不能为空'), trigger: "blur" }],
// createTime: [{ required: true, message: "创建时间不能为空", trigger: "blur" }],
source: [{ required: true, message: "客户来源不能为空", trigger: "blur" }],
status: [{ required: true, message: "客户状态不能为空", trigger: "blur" }],
founder: [{ required: true, message: "创建人不能为空", trigger: "blur" }],
source: [{ required: true, message: this.$t('客户来源不能为空'), trigger: "blur" }],
status: [{ required: true, message: this.$t('客户状态不能为空'), trigger: "blur" }],
founder: [{ required: true, message: this.$t('创建人不能为空'), trigger: "blur" }],
},
// 网点
nodeList: [],
......@@ -336,7 +336,7 @@ export default {
// 修改的提交
if (this.form.id != null) {
updateCustomer(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.$modal.msgSuccess(this.$t('修改成功'));
this.open = false;
this.getList();
});
......@@ -344,7 +344,7 @@ export default {
}
// 添加的提交
createCustomer(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.$modal.msgSuccess(this.$t('新增成功'));
this.open = false;
this.getList();
});
......@@ -353,11 +353,11 @@ export default {
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
this.$modal.confirm('是否确认删除客户编号为"' + id + '"的数据项?').then(function() {
this.$modal.confirm(this.$t('是否确认删除客户编号为"') + id + this.$t('"的数据项?')).then(function() {
return deleteCustomer(id);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
this.$modal.msgSuccess(this.$t('删除成功'));
}).catch(() => {});
},
/** 导出按钮操作 */
......@@ -368,11 +368,11 @@ export default {
params.pageSize = undefined;
this.addBeginAndEndTime(params, this.dateRangeCreateTime, 'createTime');
// 执行导出
this.$modal.confirm('是否确认导出所有客户数据项?').then(() => {
this.$modal.confirm(this.$t('是否确认导出所有客户数据项?')).then(() => {
this.exportLoading = true;
return exportCustomerExcel(params);
}).then(response => {
this.$download.excel(response, '${table.classComment}.xls');
this.$download.excel(response, `${this.$t('我的客户列表')}.xls`);
this.exportLoading = false;
}).catch(() => {});
},
......
......@@ -348,7 +348,7 @@
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.page" :limit.sync="queryParams.rows"
@pagination="getList" />
<special-needs :show.sync="isShow" :order-id="orderId" @determine="getList" ></special-needs>
<special-needs :orderNo="orderNo" :show.sync="isShow" :order-id="orderId" @determine="getList" ></special-needs>
<print-tag v-if="printTagOrderId !== null" :order-id="printTagOrderId" @close="printTagOrderId=null" />
<print-warehouse-receipt v-if="printWarehouseReceiptOrderId !== null" :order-id="printWarehouseReceiptOrderId" @close="printWarehouseReceiptOrderId=null" />
<print-lading-bill v-if="printLadingBillOrderId !== null" :order-id="printLadingBillOrderId" @close="printLadingBillOrderId=null" />
......@@ -453,6 +453,7 @@ export default {
multipleSelection:[],
transportId: null, // 指定运输方式
orderNo:''
};
},
computed: {
......
......@@ -76,21 +76,21 @@
<template slot-scope="scope">
<span>{{$t('箱规')}}{{scope.row.boxGauge||0}}</span>
<p>
<span>{{$t('品牌')}}<dict-tag :value="scope.row.brandType" :type="DICT_TYPE.ECW_IS_BRAND" /></span>
<span>{{$t('箱数')}}{{scope.row.warehouseInInfoVO?scope.row.warehouseInInfoVO.cartonsNum:0}}</span>
<span>{{$t('体积')}}{{scope.row.warehouseInInfoVO?scope.row.warehouseInInfoVO.volume:0}}CBM</span>
<span>{{$t('品牌')}}{{getBrand(scope.row.brand)}}&nbsp;&nbsp;</span>
<span>{{$t('箱数')}}{{scope.row.warehouseInInfoVO?scope.row.warehouseInInfoVO.cartonsNum:0}}&nbsp;&nbsp;</span>
<span>{{$t('体积')}}{{scope.row.warehouseInInfoVO?scope.row.warehouseInInfoVO.volume:0}}CBM&nbsp;&nbsp;</span>
<span>{{$t('重量')}}{{scope.row.warehouseInInfoVO?scope.row.warehouseInInfoVO.weight:0}}KG</span>
</p>
</template>
</el-table-column>
<el-table-column :label="$t('重货方数')" align="center" v-if="type=='order_heavy_cargo_exception'">
<template slot-scope="scope">
<span>{{ scope.row.warehouseInInfoVO?(scope.row.warehouseInInfoVO.heavyNumber||0):0}}CBM</span>
<span>{{scope.row.wvolume||0}}CBM</span>
</template>
</el-table-column>
<el-table-column :label="$t('泡货方数')" align="center" v-else >
<template slot-scope="scope">
<span>{{ scope.row.warehouseInInfoVO?(scope.row.warehouseInInfoVO.lightNumber||0):0}}CBM</span>
<span>{{scope.row.vweight||0}}CBM</span>
</template>
</el-table-column>
<el-table-column :label="$t('最后操作时间')" scope="handlerTime" />
......@@ -111,6 +111,7 @@
import {getExceptionById,handlerExceptionByExceptionId} from "@/api/ecw/orderException"
import {DICT_TYPE} from '@/utils/dict'
import {getOrder} from '@/api/ecw/order'
import {getProductBrankPage} from '@/api/ecw/productBrank'
export default {
name: "WeightDeal",
......@@ -124,7 +125,8 @@ export default {
orderData:{},
list: {},
orderId:0,
type:''
type:'',
branklist:[]
};
},
created() {
......@@ -135,6 +137,9 @@ export default {
if(this.$route.query.type){
this.type = this.$route.query.type
}
getProductBrankPage({pageNo:1,pageSize:500}).then((data)=>{
this.branklist=data.data.list
})
},
methods: {
/** 查询列表 */
......@@ -147,6 +152,10 @@ export default {
this.getOrders()
});
},
getBrand(id){
var brank = this.branklist.find(item=>item.id==id)
return brank.titleZh||''
},
checkCode(data){
if(data.indexOf('+')==-1){
return '+'+data
......
......@@ -3,26 +3,26 @@
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="关键字" prop="nickname">
<el-input v-model="queryParams.searchKey" placeholder="搜索昵称、姓名、手机、Email" clearable @keyup.enter.native="handleQuery"/>
<el-form-item :label="$t('关键字')" prop="nickname">
<el-input v-model="queryParams.searchKey" :placeholder="$t('搜索昵称、姓名、手机、Email')" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="成交" prop="mobile">
<el-form-item :label="$t('成交')" prop="mobile">
<el-select v-model="queryParams.isDeal">
<el-option v-for="item in [{label:'全部',value:''},{label:'是',value:true},{label:'否',value:false}]" :value="item.value" :label="item.label" :key="item.value" ></el-option>
<el-option v-for="item in [{label:$t('全部'),value:''},{label:$t('是'),value:true},{label:$t('否'),value:false}]" :value="item.value" :label="item.label" :key="item.value" ></el-option>
</el-select>
</el-form-item>
<el-form-item label="认证" prop="password">
<el-form-item :label="$t('认证')" prop="password">
<el-select v-model="queryParams.authType">
<el-option v-for="item in [{label: '全部',value: ''},{label:'营业执照认证',value:1},{label:'身份证认证',value:2},{label:'双认证',value:3}]" :key="item.value" :value="item.value" :label="item.label"></el-option>
<el-option v-for="item in [{label: $t('全部'),value: ''},{label:$t('营业执照认证'),value:1},{label:$t('身份证认证'),value:2},{label:$t('双认证'),value:3}]" :key="item.value" :value="item.value" :label="item.label"></el-option>
</el-select>
</el-form-item>
<el-form-item label="审核状态" prop="registerIp">
<el-form-item :label="$t('审核状态')" prop="registerIp">
<dict-selector v-model="queryParams.auditStatus" :type="DICT_TYPE.AUDIT_STATUS"></dict-selector>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
<el-button :loading="exportLoading" type="primary" @click="exportFn">导 出</el-button>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">{{$t('重置')}}</el-button>
<el-button :loading="exportLoading" type="primary" @click="exportFn">{{$t('导 出')}}</el-button>
</el-form-item>
</el-form>
......@@ -33,57 +33,57 @@
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column label="公司名称" align="center" prop="enterpriseName" />
<el-table-column label="用户昵称" align="center" prop="nickname" />
<el-table-column label="真实姓名" align="center" prop="identityName" />
<el-table-column label="区号">
<el-table-column :label="$t('公司名称')" align="center" prop="enterpriseName" />
<el-table-column :label="$t('用户昵称')" align="center" prop="nickname" />
<el-table-column :label="$t('真实姓名')" align="center" prop="identityName" />
<el-table-column :label="$t('区号')">
<template v-slot:default = 'scope'>
+{{scope.row.areaCode ? `${scope.row.areaCode}`:''}}
</template>
</el-table-column>
<el-table-column label="手机号" show-overflow-tooltip align="center" prop="mobile" >
<el-table-column :label="$t('手机号')" show-overflow-tooltip align="center" prop="mobile" >
</el-table-column>
<el-table-column label="成交" align="center" prop="customerStatus" show-overflow-tooltip >
<el-table-column :label="$t('成交')" align="center" prop="customerStatus" show-overflow-tooltip >
<template v-slot="{row}">
{{row.customerStatus === 3 ? '成交' : '非成交'}}
{{row.customerStatus === 3 ? $t('成交') : $t('非成交')}}
</template>
</el-table-column>
<el-table-column label="认证" align="center" :formatter="authentication" />
<el-table-column label="状态" align="center" prop="status" >
<el-table-column :label="$t('认证')" align="center" :formatter="authentication" />
<el-table-column :label="$t('状态')" align="center" prop="status" >
<template slot-scope="scope">
<el-switch v-model="scope.row.status" :active-value="0" :inactive-value="1" @change="handleStatusChange(scope.row)" />
</template>
</el-table-column>
<el-table-column label="身份证审核状态" align="center" prop="createTime" width="180">
<template slot-scope="scope">
<div v-if="!scope.row.identityAuditStatus">未提交</div>
<div v-if="!scope.row.identityAuditStatus">{{$t('未提交')}}</div>
<dict-tag v-else :type="DICT_TYPE.AUDIT_STATUS" :value="scope.row.identityAuditStatus" ></dict-tag>
<el-tooltip v-if="scope.row.identityAuditStatus === 3" class="item" effect="dark" :content="scope.row.identityAuditRemark" placement="bottom">
<i class="el-icon-question"></i>
</el-tooltip>
</template>
</el-table-column>
<el-table-column label="营业执照审核状态" align="center" prop="createTime" width="180">
<el-table-column :label="$t('营业执照审核状态')" align="center" prop="createTime" width="180">
<template slot-scope="scope">
<div v-if="!scope.row.enterpriseAuditStatus">未提交</div>
<div v-if="!scope.row.enterpriseAuditStatus">{{$t('未提交')}}</div>
<dict-tag v-else :type="DICT_TYPE.AUDIT_STATUS" :value="scope.row.enterpriseAuditStatus" ></dict-tag>
<el-tooltip v-if="scope.row.enterpriseAuditStatus === 3" class="item" effect="dark" :content="scope.row.rowenterpriseAuditRemark" placement="bottom">
<i class="el-icon-question"></i>
</el-tooltip>
</template>
</el-table-column>
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
<el-table-column :label="$t('创建时间')" align="center" prop="createTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="200px">
<template slot-scope="scope" >
<el-button size="mini" type="text" @click="guarantee(scope.row)">保函/证书</el-button>
<el-button size="mini" type="text" @click="operationLogFn(scope.row)">操作日志</el-button>
<el-button size="mini" type="text" @click="identityFn(scope.row , '1')">身份证</el-button>
<el-button size="mini" type="text" @click="identityFn(scope.row, '2')">营业执照</el-button>
<el-button size="mini" type="text" @click="deleteFn(scope.row)"> </el-button>
<el-button size="mini" type="text" @click="guarantee(scope.row)">{{$t('保函/证书')}}</el-button>
<el-button size="mini" type="text" @click="operationLogFn(scope.row)">{{$t('操作日志')}}</el-button>
<el-button size="mini" type="text" @click="identityFn(scope.row , '1')">{{$t('身份证')}}</el-button>
<el-button size="mini" type="text" @click="identityFn(scope.row, '2')">{{$t('营业执照')}}</el-button>
<el-button size="mini" type="text" @click="deleteFn(scope.row)">{{$t('删 除')}}</el-button>
</template>
</el-table-column>
</el-table>
......@@ -96,139 +96,139 @@
:before-close="()=>{guaranteeUrl = ''; guaranteeShow = false;}"
width="50%">
<el-form>
<el-form-item label="保函/证书">
<el-form-item :label="$t('保函/证书')">
<el-row :gutter="20" type="flex" justify="center" >
<el-col :span="12"><el-input v-model="guaranteeUrl" ></el-input></el-col>
<el-col :span="4"><div style="height: 45px;overflow: hidden;">
<file-upload v-model="guaranteeUrl" :fileType="['png', 'jpg', 'jpeg','pdf']" :limit="1" :isShowTip="false"></file-upload>
</div></el-col>
<el-col :span="6">
<div>可上传图片,pdf文档</div>
<div>{{$t('可上传图片,pdf文档')}}</div>
</el-col>
</el-row>
</el-form-item>
</el-form>
<div style="text-align: center;"><el-button @click="setGuarantee"> </el-button></div>
<div style="text-align: center;"><el-button @click="setGuarantee">{{$t('保 存')}}</el-button></div>
</el-dialog>
<el-dialog
title="操作日志"
:title="$t('操作日志')"
:visible.sync="operationLogShow"
width="50%">
<el-table :data="operationLogList">
<el-table-column label="标题" prop="title"></el-table-column>
<el-table-column label="操作内容" prop="content"></el-table-column>
<el-table-column label="操作人" prop="userId">
<el-table-column :label="$t('标题')" prop="title"></el-table-column>
<el-table-column :label="$t('操作内容')" prop="content"></el-table-column>
<el-table-column :label="$t('操作人')" prop="userId">
<template v-slot="{row}">
{{list.find(i => i.id == row.userId).identityName}}
</template>
</el-table-column>
<el-table-column label="操作时间">
<el-table-column :label="$t('操作时间')">
<template v-slot:default ="scope">
{{parseTime(scope.row.createTime) }}
</template>
</el-table-column>
<el-table-column label="操作ip" prop="ip"></el-table-column>
<el-table-column :label="$t('操作ip')" prop="ip"></el-table-column>
</el-table>
<pagination v-show="totalLog > 0" :total="totalLog" :page.sync="operationLogFrom.page" :limit.sync="operationLogFrom.row"
@pagination="getOperationLogList"/>
</el-dialog>
<el-dialog
title="认证"
:title="$t('认证')"
:visible.sync="attestationShow"
width="80%">
<div class="details">
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane label="身份证" name="1">
<el-tab-pane :label="$t('身份证')" name="1">
<div style="padding:0 40px;box-sizing: border-box;">
<el-form :disabled="[2,3].includes(IdDetails.status) && modifyIdCard" ref="formId" label-position="left" label-width="100px" :rules="rulesId" :model="IdDetails" >
<el-form-item label="姓名" prop="name">
<el-form-item :label="$t('姓名')" prop="name">
<el-input v-model="IdDetails.name"></el-input>
</el-form-item>
<el-form-item label="证件类型" prop="cardType">
<el-form-item :label="$t('证件类型')" prop="cardType">
<dict-selector v-model="IdDetails.cardType" :type="DICT_TYPE.CERTIFICATE_TYPE" ></dict-selector>
</el-form-item>
<el-form-item label="证件号码" prop="cardNumber">
<el-form-item :label="$t('证件号码')" prop="cardNumber">
<el-input v-model="IdDetails.cardNumber"></el-input>
</el-form-item>
<el-form-item label="证件正面照" prop="img1">
<el-form-item :label="$t('证件正面照')" prop="img1">
<div>
<el-input readonly style="margin-bottom: 20px" v-model="IdDetails.img1"></el-input>
<ImageUpload :isShowTip="false" v-model="IdDetails.img1" :limit="1"></ImageUpload>
</div>
</el-form-item>
<el-form-item label="证件背面照" prop="img2">
<el-form-item :label="$t('证件背面照')" prop="img2">
<div>
<el-input readonly style="margin-bottom: 20px" v-model="IdDetails.img2"></el-input>
<ImageUpload :isShowTip="false" :limit="1" v-model="IdDetails.img2"></ImageUpload>
</div>
</el-form-item>
<el-form-item label="审核状态" v-if="modifyIdCard && IdDetails.status !== 0 ">
<el-form-item :label="$t('审核状态')" v-if="modifyIdCard && IdDetails.status !== 0 ">
{{getDictDatas(DICT_TYPE.AUDIT_STATUS)[IdDetails.status].label}}
</el-form-item>
<el-form-item label="审核时间" v-if="[2,3].includes(IdDetails.status) && modifyIdCard">
<el-form-item :label="$t('审核时间')" v-if="[2,3].includes(IdDetails.status) && modifyIdCard">
{{parseTime(IdDetails.auditTime)}}
</el-form-item>
<el-form-item v-if="modifyIdCard && IdDetails.status !== 0" label="审核备注">
<el-form-item v-if="modifyIdCard && IdDetails.status !== 0" :label="$t('审核备注')">
<el-input v-model="IdDetails.auditRemark" :disabled="IdDetails.status === 3" type="textarea"></el-input>
</el-form-item>
</el-form>
<div v-if="IdDetails.status === 1" style="text-align: center;margin-top: 20px;">
<el-button type="primary" @click="idCardAuditFn(2)">审核通过</el-button>
<el-button type="primary" @click="idCardAuditFn(3)">审核不通过</el-button>
<el-button type="primary" @click="idCardAuditFn(2)">{{$t('审核通过')}}</el-button>
<el-button type="primary" @click="idCardAuditFn(3)">{{$t('审核不通过')}}</el-button>
<el-button @click="attestationShow = false"> </el-button>
</div>
<div v-if="IdDetails.status === 2 || IdDetails.status === 3" style="text-align: center;margin-top: 20px;">
<el-button type="primary" v-if="modifyIdCard" @click="modifyIdCard = false;"> </el-button>
<el-button type="primary" v-else @click="setMemberUserUpdateIdCard">提交审核</el-button>
<el-button @click="attestationShow = false"> </el-button>
<el-button type="primary" v-if="modifyIdCard" @click="modifyIdCard = false;">{{$t('修 改')}}</el-button>
<el-button type="primary" v-else @click="setMemberUserUpdateIdCard">{{$t('提交审核')}}</el-button>
<el-button @click="attestationShow = false">{{$t('取 消')}}</el-button>
</div>
<div v-if="IdDetails.status === 0" style="text-align: center;margin-top: 20px;">
<el-button type="primary" @click="submitId"> </el-button>
<el-button @click="attestationShow = false"> </el-button>
<el-button type="primary" @click="submitId">{{$t('上 传')}}</el-button>
<el-button @click="attestationShow = false">{{$t('取 消')}}</el-button>
</div>
</div>
</el-tab-pane>
<el-tab-pane label="营业执照" name="2" >
<el-tab-pane :label="$t('营业执照')" name="2" >
<div style="width: 500px;padding:0 40px;box-sizing: border-box;">
<el-form :disabled="modifyLicense && [2,3].includes(enterpriseFrom.status)" :rules="rulesEnterprise" :model="enterpriseFrom" label-position="left" ref="formEnter" label-width="100px">
<el-form-item label="企业名称" prop="name">
<el-form-item :label="$t('企业名称')" prop="name">
<el-input v-model="enterpriseFrom.name" ></el-input>
</el-form-item>
<el-form-item label="企业法人" prop="legalName">
<el-form-item :label="$t('企业法人')" prop="legalName">
<el-input v-model="enterpriseFrom.legalName" ></el-input>
</el-form-item>
<el-form-item label="证件号码" prop="cardNumber">
<el-form-item :label="$t('证件号码')" prop="cardNumber">
<el-input v-model="enterpriseFrom.cardNumber"></el-input>
</el-form-item>
<el-form-item label="证件照" prop="img1">
<el-form-item :label="$t('证件照')" prop="img1">
<div>
<el-input readonly style="margin-bottom: 20px" v-model="enterpriseFrom.img1"></el-input>
<ImageUpload :isShowTip="false" :limit="1" v-model="enterpriseFrom.img1"></ImageUpload>
</div>
</el-form-item>
<el-form-item label="附件">
<el-form-item :label="$t('附件')">
<el-input readonly v-model="enterpriseFrom.img2"></el-input>
<ImageUpload :isShowTip="false" :limit="1" v-model="enterpriseFrom.img2"></ImageUpload>
</el-form-item>
<el-form-item v-if="modifyLicense && enterpriseFrom.status !== 0 " label="审核状态">{{getDictDatas(DICT_TYPE.AUDIT_STATUS)[enterpriseFrom.status].label}}</el-form-item>
<el-form-item v-if="[2,3].includes(enterpriseFrom.status) && modifyLicense " label="审核时间">{{parseTime(enterpriseFrom.auditTime)}}</el-form-item>
<el-form-item v-if="modifyLicense && enterpriseFrom.status !== 0" label="审核备注">
<el-form-item v-if="modifyLicense && enterpriseFrom.status !== 0 " :label="$t('审核状态')">{{getDictDatas(DICT_TYPE.AUDIT_STATUS)[enterpriseFrom.status].label}}</el-form-item>
<el-form-item v-if="[2,3].includes(enterpriseFrom.status) && modifyLicense " :label="$t('审核时间')">{{parseTime(enterpriseFrom.auditTime)}}</el-form-item>
<el-form-item v-if="modifyLicense && enterpriseFrom.status !== 0" :label="$t('审核备注')">
<el-input v-model="enterpriseFrom.auditRemark" :disabled="enterpriseFrom.status === 3" type="textarea"></el-input>
</el-form-item>
</el-form>
<div v-if="enterpriseFrom.status === 1" style="text-align: center;margin-top: 20px;">
<el-button type="primary" @click="certificateVerificationFn(2)">审核通过</el-button>
<el-button type="primary" @click="certificateVerificationFn(3)">审核不通过</el-button>
<el-button @click="attestationShow = false"> </el-button>
<el-button type="primary" @click="certificateVerificationFn(2)">{{$t('审核通过')}}</el-button>
<el-button type="primary" @click="certificateVerificationFn(3)">{{$t('审核不通过')}}</el-button>
<el-button @click="attestationShow = false">{{$t('取 消')}}</el-button>
</div>
<div v-if="enterpriseFrom.status === 2 || enterpriseFrom.status === 3" style="text-align: center;margin-top: 20px;">
<el-button type="primary" v-if="modifyLicense" @click="modifyLicense = false"> </el-button>
<el-button type="primary" v-else @click="setMemberUserUpdateEnterprise">提交审核</el-button>
<el-button @click="attestationShow = false"> </el-button>
<el-button type="primary" v-if="modifyLicense" @click="modifyLicense = false">{{$t('修 改')}}</el-button>
<el-button type="primary" v-else @click="setMemberUserUpdateEnterprise">{{$t('提交审核')}}</el-button>
<el-button @click="attestationShow = false">{{$t('取 消')}}</el-button>
</div>
<div v-if="enterpriseFrom.status === 0" style="text-align: center;margin-top: 20px;">
<el-button type="primary" @click="submit"> </el-button>
<el-button @click="attestationShow = false"> </el-button>
<el-button type="primary" @click="submit">{{$t('上 传')}}</el-button>
<el-button @click="attestationShow = false">{{$t('取 消')}}</el-button>
</div>
</div>
</el-tab-pane>
......@@ -263,13 +263,6 @@ import ImageUpload from "@/components/ImageUpload";
import uploadImage from "@/components/UploadImage";
import {CommonStatusEnum} from "@/utils/constants";
import {changeUserStatus, listServiceUser, listSimpleUsers} from "@/api/system/user";
let stateId = {
0:'审核中',
1:'审核通过',
2:'审核不通过',
3:'已过期'
}
export default {
name: "User",
components: {
......@@ -279,7 +272,6 @@ export default {
data() {
return {
totalLog:0,
stateId,
IdDetails:{},
enterpriseFrom:{},
guaranteeUrl:undefined,
......@@ -316,17 +308,17 @@ export default {
form: {},
// 表单校验
rulesId: {
name: [{ required: true, message: "用户昵称不能为空", trigger: "blur" }],
cardType: [{ required: true, message: "证件类型不能为空", trigger: "blur" }],
cardNumber: [{ required: true, message: "证件号码不能为空", trigger: "blur" }],
img1: [{ required: true, message: "身份正面照不能为空", trigger: ['blur','change'] }],
img2: [{ required: true, message: "身份正面照不能为空", trigger: ['blur','change'] }],
name: [{ required: true, message: this.$t('用户昵称不能为空'), trigger: "blur" }],
cardType: [{ required: true, message: this.$t('证件类型不能为空'), trigger: "blur" }],
cardNumber: [{ required: true, message: this.$t('证件号码不能为空'), trigger: "blur" }],
img1: [{ required: true, message: this.$t('身份正面照不能为空'), trigger: ['blur','change'] }],
img2: [{ required: true, message: this.$t('身份正面照不能为空'), trigger: ['blur','change'] }],
},
rulesEnterprise: {
name: [{required: true, message: "企业名称不能为空", trigger: "blur"}],
legalName: [{required: true, message: "企业法人不能为空", trigger: "blur"}],
cardNumber: [{required: true, message: "证件号码不能为空", trigger: "blur"}],
img1: [{required: true, message: "证件照不能为空", trigger: ['blur','change']}],
name: [{required: true, message: this.$t('企业名称不能为空'), trigger: "blur"}],
legalName: [{required: true, message: this.$t('企业法人不能为空'), trigger: "blur"}],
cardNumber: [{required: true, message: this.$t('证件号码不能为空'), trigger: "blur"}],
img1: [{required: true, message: this.$t('证件照不能为空'), trigger: ['blur','change']}],
},
publicObj:undefined,
operationLogShow:false,
......@@ -350,33 +342,33 @@ export default {
methods: {
deleteFn(row){
console.log(row)
this.$modal.confirm(`是否要删除昵称为${row.nickname}的会员`).then(function (){
this.$modal.confirm(`${this.$t('是否要删除昵称为')}${row.nickname}的会员`).then(function (){
return deleteUser(row.id)
}).then( res => {
if(res.code === 0) this.getList(); this.$message.success('删除成功')
if(res.code === 0) this.getList(); this.$message.success(this.$t('删除成功'))
}).catch(() =>{
this.$message.success('删除失败')
this.$message.success(this.$t('删除失败'))
}
)
},
//导出
exportFn(){
this.$modal.confirm('是否确认导出所有用户数据项?').then(() => {
this.$modal.confirm(this.$t('是否确认导出所有用户数据项?')).then(() => {
this.exportLoading = true;
return exportUserExcel(this.queryParams);
}).then(response => {
this.$download.excel(response, '${table.classComment}.xls');
this.$download.excel(response, `${this.$t('注册会员')}.xls`);
this.exportLoading = false;
}).catch(() => {});
},
// 用户状态修改
handleStatusChange(row) {
let text = row.status === CommonStatusEnum.ENABLE ? "启用" : "停用";
this.$modal.confirm('确认要"' + text + '""' + row.nickname + '"用户吗?').then(function() {
let text = row.status === CommonStatusEnum.ENABLE ? this.$t('启用') : this.$t('停用');
this.$modal.confirm(this.$t('确认要"') + text + '""' + row.nickname + this.$t('"用户吗?')).then(function() {
return setUserUpdateStatus({id:row.id,status:row.status})
}).then(() => {
this.$modal.msgSuccess(text + "成功");
this.$modal.msgSuccess(text + this.$t('成功'));
}).catch(function() {
row.status = row.status === CommonStatusEnum.ENABLE ? CommonStatusEnum.DISABLE
: CommonStatusEnum.ENABLE;
......@@ -468,7 +460,7 @@ export default {
if(r.code === 0){
this.publicObj.backLetterImg = this.guaranteeUrl;
this.guaranteeShow = false;
this.$message.success('保存成功');
this.$message.success(this.$t('保存成功'));
}
})
},
......@@ -514,7 +506,7 @@ export default {
}
memberUserAuditIdCard(p).then(r => {
if(r.code === 0){
this.$message.success('修改成功');
this.$message.success(this.$t('修改成功'));
this.getList()
this.getIdentityDetails()
}
......@@ -548,7 +540,7 @@ export default {
};
memberUserUpdateIdCard(p).then(r => {
if(r.code === 0){
this.$message.success('修改成功')
this.$message.success(this.$t('修改成功'))
if(p.auditPass === true ){
this.getIdentityDetails()
}
......@@ -578,7 +570,7 @@ export default {
}
this.getList()
this.modifyLicense = true;
this.$message.success('修改成功');
this.$message.success(this.$t('修改成功'));
}
})
}
......@@ -586,13 +578,13 @@ export default {
},
authentication(row){
if(!row.identityAuditStatus && !row.enterpriseAuditRemark){
return ''
return this.$t('')
}else if(row.identityAuditStatus >= 0 && row.enterpriseAuditRemark >= 0){
return '双认证'
return this.$t('双认证')
} else if(row.identityAuditStatus >= 0){
return '身份'
return this.$t('身份')
}else if(row.enterpriseAuditRemark >= 0){
return '营业'
return this.$t('营业')
}
},
submit(){
......@@ -607,7 +599,7 @@ export default {
}
userCreateAuditEnterprise(p).then(r => {
if(r.code === 0){
this.$message.success('添加成功!');
this.$message.success(this.$t('添加成功!'));
this.enterpriseFrom.status = 2
this.enterpriseFrom.auditTime = new Date().getTime()
this.getEnterpriseFn();
......@@ -629,7 +621,7 @@ export default {
};
createAuditIdCard(p).then(r => {
if(r.code === 0){
this.$message.success('添加成功!');
this.$message.success(this.$t('添加成功!'));
this.IdDetails.status = 2
this.IdDetails.auditTime = new Date().getTime()
this.getIdentityDetails();
......
......@@ -4,23 +4,23 @@
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="关键字" prop="nickname">
<el-input v-model="queryParams.searchKey" placeholder="搜索昵称、姓名、手机、Email" clearable @keyup.enter.native="handleQuery"/>
<el-form-item :label="$t('关键字')" prop="nickname">
<el-input v-model="queryParams.searchKey" :placeholder="$t('搜索昵称、姓名、手机、Email')" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="成交" prop="mobile">
<el-select v-model="queryParams.isDeal">
<el-option v-for="item in [{label:'全部',value:''},{label:'是',value:true},{label:'否',value:false}]" :value="item.value" :label="item.label" :key="item.value" ></el-option>
<el-option v-for="item in [{label:$t('全部'),value:''},{label:$t('是'),value:true},{label:$t('否'),value:false}]" :value="item.value" :label="item.label" :key="item.value" ></el-option>
</el-select>
</el-form-item>
<el-form-item label="认证" prop="password">
<el-select v-model="queryParams.authType">
<el-option v-for="item in [{label: '全部',value: ''},{label:'营业执照认证',value:1},{label:'身份证认证',value:2},{label:'双认证',value:3}]" :key="item.value" :value="item.value" :label="item.label"></el-option>
<el-option v-for="item in [{label: $t('全部'),value: ''},{label:$t('营业执照认证'),value:1},{label:$t('身份证认证'),value:2},{label:$t('双认证'),value:3}]" :key="item.value" :value="item.value" :label="item.label"></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
<el-button :loading="exportLoading" type="primary" @click="exportFn">导 出</el-button>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">{{$t('重置')}}</el-button>
<el-button :loading="exportLoading" type="primary" @click="exportFn">{{$t('导 出')}}</el-button>
</el-form-item>
</el-form>
......@@ -31,19 +31,19 @@
<!-- 列表 -->
<el-table v-loading="loading" :data="list">
<el-table-column label="公司名称" align="center" prop="enterpriseName" />
<el-table-column label="用户昵称" align="center" prop="nickname" />
<el-table-column label="真实姓名" align="center" prop="identityName" />
<el-table-column label="区号">
<el-table-column :label="$t('公司名称')" align="center" prop="enterpriseName" />
<el-table-column :label="$t('用户昵称')" align="center" prop="nickname" />
<el-table-column :label="$t('真实姓名')" align="center" prop="identityName" />
<el-table-column :label="$t('区号')">
<template v-slot:default = 'scope'>
+{{scope.row.areaCode ? `${scope.row.areaCode}`:''}}
</template>
</el-table-column>
<el-table-column label="手机号" show-overflow-tooltip align="center" prop="mobile" >
<el-table-column :label="$t('手机号')" show-overflow-tooltip align="center" prop="mobile" >
</el-table-column>
<el-table-column label="成交" align="center" prop="" show-overflow-tooltip >
<el-table-column :label="$t('成交')" align="center" prop="" show-overflow-tooltip >
<template v-slot="{row}">
{{row.customerStatus === 3 ? '成交' : '非成交'}}
{{row.customerStatus === 3 ? $t('成交') : $t('非成交')}}
</template>
</el-table-column>
<el-table-column label="认证" align="center" :formatter="authentication" />
......@@ -52,32 +52,32 @@
<el-switch v-model="scope.row.status" :active-value="0" :inactive-value="1" @change="handleStatusChange(scope.row)" />
</template>
</el-table-column>
<el-table-column label="身份证审核状态" align="center" prop="createTime" width="180">
<el-table-column :label="$t('身份证审核状态')" align="center" prop="createTime" width="180">
<template slot-scope="scope">
<div v-if="!scope.row.identityAuditStatus">未提交</div>
<div v-if="!scope.row.identityAuditStatus">{{$t('未提交')}}</div>
<dict-tag v-else :type="DICT_TYPE.AUDIT_STATUS" :value="scope.row.identityAuditStatus" ></dict-tag>
<el-tooltip v-if="scope.row.identityAuditStatus === 3" class="item" effect="dark" :content="scope.row.identityAuditRemark" placement="bottom">
<i class="el-icon-question"></i>
</el-tooltip>
</template>
</el-table-column>
<el-table-column label="营业执照审核状态" align="center" prop="createTime" width="180">
<el-table-column :label="$t('营业执照审核状态')" align="center" prop="createTime" width="180">
<template slot-scope="scope">
<div v-if="!scope.row.enterpriseAuditStatus">未提交</div>
<div v-if="!scope.row.enterpriseAuditStatus">{{$t('未提交')}}</div>
<dict-tag v-else :type="DICT_TYPE.AUDIT_STATUS" :value="scope.row.enterpriseAuditStatus" ></dict-tag>
<el-tooltip v-if="scope.row.enterpriseAuditStatus === 3" class="item" effect="dark" :content="scope.row.rowenterpriseAuditRemark" placement="bottom">
<i class="el-icon-question"></i>
</el-tooltip>
</template>
</el-table-column>
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
<el-table-column :label="$t('创建时间')" align="center" prop="createTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="200px">
<el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width" width="200px">
<template slot-scope="scope" >
<el-button v-if="scope.row.identityAuditStatus !== 0 && scope.row.identityAuditStatus !== undefined" size="mini" type="text" @click="identityFn(scope.row , '1')">身份证审核</el-button>
<el-button v-if="scope.row.identityAuditStatus !== 0 && scope.row.identityAuditStatus !== undefined" size="mini" type="text" @click="identityFn(scope.row , '1')">{{$t('身份证审核')}}</el-button>
</template>
</el-table-column>
</el-table>
......@@ -85,49 +85,49 @@
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.page" :limit.sync="queryParams.rows"
@pagination="getList"/>
<el-dialog
title="认证"
:title="$t('认证')"
:visible.sync="attestationShow"
width="80%">
<div class="details">
<el-tabs v-model="activeName" >
<el-tab-pane label="身份证" name="1">
<el-tab-pane :label="$t('身份证')" name="1">
<div style="padding:0 40px;box-sizing: border-box;">
<el-form ref="formId" label-position="left" label-width="100px" :rules="rulesId" :model="IdDetails" >
<el-form-item label="姓名" prop="name">
<el-form-item :label="$t('姓名')" prop="name">
<el-input v-model="IdDetails.name"></el-input>
</el-form-item>
<el-form-item label="证件类型" prop="cardType">
<el-form-item :label="$t('证件类型')" prop="cardType">
<dict-selector v-model="IdDetails.cardType" :type="DICT_TYPE.CERTIFICATE_TYPE" ></dict-selector>
</el-form-item>
<el-form-item label="证件号码" prop="cardNumber">
<el-form-item :label="$t('证件号码')" prop="cardNumber">
<el-input v-model="IdDetails.cardNumber"></el-input>
</el-form-item>
<el-form-item label="证件正面照" prop="img1">
<el-form-item :label="$t('证件正面照')" prop="img1">
<div>
<el-input readonly style="margin-bottom: 20px" v-model="IdDetails.img1"></el-input>
<ImageUpload :isShowTip="false" v-model="IdDetails.img1" :limit="1"></ImageUpload>
</div>
</el-form-item>
<el-form-item label="证件背面照" prop="img2">
<el-form-item :label="$t('证件背面照')" prop="img2">
<div>
<el-input readonly style="margin-bottom: 20px" v-model="IdDetails.img2"></el-input>
<ImageUpload :isShowTip="false" :limit="1" v-model="IdDetails.img2"></ImageUpload>
</div>
</el-form-item>
<el-form-item label="审核状态">
<el-form-item :label="$t('审核状态')">
{{getDictDatas(DICT_TYPE.AUDIT_STATUS)[IdDetails.status].label}}
</el-form-item>
<el-form-item label="审核时间" v-if="IdDetails.status === 2 || IdDetails.status === 3">
<el-form-item :label="$t('审核时间')" v-if="IdDetails.status === 2 || IdDetails.status === 3">
{{parseTime(IdDetails.auditTime)}}
</el-form-item>
<el-form-item v-if="IdDetails.status === 1 || IdDetails.status === 3" label="审核备注">
<el-form-item v-if="IdDetails.status === 1 || IdDetails.status === 3" :label="$t('审核备注')">
<el-input v-model="IdDetails.auditRemark" :disabled="IdDetails.status === 3" type="textarea"></el-input>
</el-form-item>
</el-form>
<div v-if="IdDetails.status === 1" style="text-align: center;margin-top: 20px;">
<el-button type="primary" @click="idCardAuditFn(2)">审核通过</el-button>
<el-button type="primary" @click="idCardAuditFn(3)">审核不通过</el-button>
<el-button @click="attestationShow = false"> </el-button>
<el-button type="primary" @click="idCardAuditFn(2)">{{$t('审核通过')}}</el-button>
<el-button type="primary" @click="idCardAuditFn(3)">{{$t('审核不通过')}}</el-button>
<el-button @click="attestationShow = false">{{$t('取 消')}}</el-button>
</div>
</div>
</el-tab-pane>
......@@ -159,12 +159,6 @@ import uploadImage from "@/components/UploadImage";
import {CommonStatusEnum} from "@/utils/constants";
import {changeUserStatus, listServiceUser, listSimpleUsers} from "@/api/system/user";
let stateId = {
0:'审核中',
1:'审核通过',
2:'审核不通过',
3:'已过期'
}
export default {
name: "underReview",
components: {
......@@ -174,7 +168,6 @@ export default {
data() {
return {
totalLog:0,
stateId,
IdDetails:{},
enterpriseFrom:{},
guaranteeUrl:undefined,
......@@ -211,11 +204,11 @@ export default {
form: {},
// 表单校验
rulesId: {
name: [{ required: true, message: "用户昵称不能为空", trigger: "blur" }],
cardType: [{ required: true, message: "证件类型不能为空", trigger: "blur" }],
cardNumber: [{ required: true, message: "证件号码不能为空", trigger: "blur" }],
img1: [{ required: true, message: "身份正面照不能为空", trigger: ['blur','change'] }],
img2: [{ required: true, message: "身份正面照不能为空", trigger: ['blur','change'] }],
name: [{ required: true, message: this.$t('用户昵称不能为空'), trigger: "blur" }],
cardType: [{ required: true, message: this.$t('证件类型不能为空'), trigger: "blur" }],
cardNumber: [{ required: true, message: this.$t('证件号码不能为空'), trigger: "blur" }],
img1: [{ required: true, message: this.$t('身份正面照不能为空'), trigger: ['blur','change'] }],
img2: [{ required: true, message: this.$t('身份正面照不能为空'), trigger: ['blur','change'] }],
},
publicObj:undefined,
operationLogShow:false,
......@@ -237,33 +230,33 @@ export default {
methods: {
deleteFn(row){
console.log(row)
this.$modal.confirm(`是否要删除昵称为${row.nickname}的会员`).then(function (){
this.$modal.confirm(`${this.$t('是否要删除昵称为')}${row.nickname}${this.$t('的会员')}`).then(function (){
return deleteUser(row.id)
}).then( res => {
if(res.code === 0) this.getList(); this.$message.success('删除成功')
if(res.code === 0) this.getList(); this.$message.success(this.$t('删除成功'))
}).catch(() =>{
this.$message.success('删除失败')
this.$message.success(this.$t('删除失败'))
}
)
},
//导出
exportFn(){
this.$modal.confirm('是否确认导出所有用户数据项?').then(() => {
this.$modal.confirm(this.$t('是否确认导出所有用户数据项?')).then(() => {
this.exportLoading = true;
return exportUserExcel(this.queryParams);
}).then(response => {
this.$download.excel(response, '${table.classComment}.xls');
this.$download.excel(response, `${this.$t('待审核会员')}.xls`);
this.exportLoading = false;
}).catch(() => {});
},
// 用户状态修改
handleStatusChange(row) {
let text = row.status === CommonStatusEnum.ENABLE ? "启用" : "停用";
this.$modal.confirm('确认要"' + text + '""' + row.nickname + '"用户吗?').then(function() {
let text = row.status === CommonStatusEnum.ENABLE ? this.$t('启用') : this.$t('停用');
this.$modal.confirm(this.$t('确认要"') + text + '""' + row.nickname + this.$t('"用户吗?')).then(function() {
return setUserUpdateStatus({id:row.id,status:row.status})
}).then(() => {
this.$modal.msgSuccess(text + "成功");
this.$modal.msgSuccess(text + this.$t('成功'));
}).catch(function() {
row.status = row.status === CommonStatusEnum.ENABLE ? CommonStatusEnum.DISABLE
: CommonStatusEnum.ENABLE;
......@@ -340,7 +333,7 @@ export default {
if(r.code === 0){
this.publicObj.backLetterImg = this.guaranteeUrl;
this.guaranteeShow = false;
this.$message.success('保存成功');
this.$message.success(this.$t('保存成功'));
}
})
},
......@@ -378,7 +371,7 @@ export default {
}
memberUserAuditIdCard(p).then(r => {
if(r.code === 0){
this.$message.success('修改成功');
this.$message.success(this.$t('修改成功'));
this.getList()
this.attestationShow = false;
......@@ -387,13 +380,13 @@ export default {
},
authentication(row){
if(!row.identityAuditStatus && !row.enterpriseAuditRemark){
return ''
return this.$t('')
}else if(row.identityAuditStatus >= 0 && row.enterpriseAuditRemark >= 0){
return '双认证'
return this.$t('双认证')
} else if(row.identityAuditStatus >= 0){
return '身份'
return this.$t('身份')
}else if(row.enterpriseAuditRemark >= 0){
return '营业'
return this.$t('营业')
}
},
submit(){
......@@ -409,7 +402,7 @@ export default {
userCreateAuditEnterprise(p).then(r => {
console.log(r);
if(r.code === 0){
this.$message.success('添加成功!');
this.$message.success(this.$t('添加成功!'));
this.enterpriseFrom.status = 2
this.enterpriseFrom.auditTime = new Date().getTime()
this.getEnterpriseFn();
......
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