|
|
<template>
|
|
|
<div>
|
|
|
<el-form :model="formData" :rules="formRules" ref="dataForm">
|
|
|
|
|
|
<div style="display: flex; margin-top: -30px" v-if="hiddenAdd === true && hiddenAdd2 !== true">
|
|
|
<el-button style="margin: 0 20px 0 auto"type="primary" size="small" @click.native="updateAuditStatus(1)">通过</el-button>
|
|
|
<el-button style="margin: 0 20px 0 0"type="primary" size="small" @click.native="updateAuditStatus(2)">不通过</el-button>
|
|
|
<el-button style="margin: 0 20px 0 0" @click="centerDialogVisible = false">取消</el-button>
|
|
|
</div>
|
|
|
|
|
|
<el-card>
|
|
|
<el-button-group style="display: flex" v-if="hiddenAdd !== true">
|
|
|
<el-button
|
|
|
type="primary"
|
|
|
@click.native="submitUpload()"
|
|
|
style="margin: 0 60px 10px auto; height: 35px"
|
|
|
:loading="loading"
|
|
|
>提交
|
|
|
</el-button
|
|
|
>
|
|
|
</el-button-group>
|
|
|
|
|
|
<el-row :gutter="20">
|
|
|
<el-col :span="10">
|
|
|
<el-form-item label="姓名:" label-width="150px" prop="name">
|
|
|
<el-input v-model="formData.name" auto-complete="off" :disabled="hiddenAdd"></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="10">
|
|
|
<el-form-item label="电话:" label-width="150px" prop="tel">
|
|
|
<el-input v-model="formData.tel" auto-complete="off" :disabled="hiddenAdd">></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
|
|
|
<el-row :gutter="20">
|
|
|
<el-col :span="10">
|
|
|
<el-form-item label="手机:" label-width="150px" prop="phone">
|
|
|
<el-input v-model="formData.phone" auto-complete="off" :disabled="hiddenAdd">></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="10">
|
|
|
<el-form-item label="邮箱:" label-width="150px" prop="email">
|
|
|
<el-input v-model="formData.email" auto-complete="off" :disabled="hiddenAdd">></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
|
|
|
<el-row :gutter="20">
|
|
|
<el-col :span="10" class="el-col">
|
|
|
<el-form-item label="证件类型:" label-width="150px" prop="certType">
|
|
|
<el-select
|
|
|
size="small"
|
|
|
v-model="formData.certType"
|
|
|
placeholder="证件类型"
|
|
|
style="width: 100%;"
|
|
|
:disabled="hiddenAdd">
|
|
|
>
|
|
|
<el-option label="身份证" value="1"></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="10">
|
|
|
<el-form-item label="证件号码:" label-width="150px" prop="certCode">
|
|
|
<el-input v-model="formData.certCode" auto-complete="off" :disabled="hiddenAdd">></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
|
|
|
<el-row :gutter="20">
|
|
|
<el-col :span="10" class="el-col">
|
|
|
<el-form-item label="证件电子档:" label-width="150px">
|
|
|
<el-upload
|
|
|
v-if="hiddenAdd !== true"
|
|
|
class="upload-demo"
|
|
|
ref="upload"
|
|
|
:action="this.uploadUrl"
|
|
|
:limit="1"
|
|
|
:headers="headers"
|
|
|
:on-exceed="uploadHandleExceed"
|
|
|
accept=".jpg,.png"
|
|
|
:on-change="uploadOnchange"
|
|
|
:on-success="uploadHandleSuccess"
|
|
|
:file-list="fileList"
|
|
|
:data="{type:'image5'}"
|
|
|
:auto-upload="false">
|
|
|
<el-button slot="trigger" size="small" type="primary">选取文件</el-button>
|
|
|
<div>只能上传 .jpg,.png 文件,且不超过 2 MB</div>
|
|
|
</el-upload>
|
|
|
<el-button
|
|
|
v-if="hiddenAdd === true"
|
|
|
:disabled="formData.filePath === null"
|
|
|
type="primary"
|
|
|
@click.native="openFile(formData.filePath)"
|
|
|
style="margin: 0 60px 10px auto; height: 35px"
|
|
|
:loading="loading"
|
|
|
>查看
|
|
|
</el-button
|
|
|
>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="10" class="el-col">
|
|
|
<el-form-item label="授权书电子档:" label-width="150px">
|
|
|
<el-upload
|
|
|
v-if="hiddenAdd !== true"
|
|
|
class="upload-demo2"
|
|
|
ref="upload2"
|
|
|
:action="this.uploadUrl"
|
|
|
:limit="1"
|
|
|
:headers="headers"
|
|
|
:on-exceed="uploadHandleExceed"
|
|
|
accept=".jpg,.png"
|
|
|
:on-change="uploadOnchange"
|
|
|
:on-success="uploadHandleSuccess2"
|
|
|
:file-list="fileList2"
|
|
|
:data="{type:'image5'}"
|
|
|
:auto-upload="false">
|
|
|
<el-button slot="trigger" size="small" type="primary">选取文件</el-button>
|
|
|
<div>只能上传 .jpg,.png 文件,且不超过 2 MB</div>
|
|
|
</el-upload>
|
|
|
<el-button
|
|
|
v-if="hiddenAdd === true"
|
|
|
:disabled="formData.filePath2 === null"
|
|
|
type="primary"
|
|
|
@click.native="openFile(formData.filePath2)"
|
|
|
style="margin: 0 60px 10px auto; height: 35px"
|
|
|
:loading="loading"
|
|
|
>查看
|
|
|
</el-button
|
|
|
>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</el-card>
|
|
|
</el-form>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
import draggable from "vuedraggable";
|
|
|
import {saveAs} from "file-saver";
|
|
|
import {parseTime} from "../../filtres/index";
|
|
|
import store from "../../store";
|
|
|
import {BASE_URL} from "../../config/app";
|
|
|
import {insertCompanySalesman, updateCompanySalesman} from "../../api/warehouse/companySalesman";
|
|
|
|
|
|
export default {
|
|
|
name: "idQuery",
|
|
|
props: {
|
|
|
closeDialog: {
|
|
|
type: Function,
|
|
|
required: true,
|
|
|
},
|
|
|
idQuery: {
|
|
|
type: Object,
|
|
|
required: true,
|
|
|
},
|
|
|
},
|
|
|
data() {
|
|
|
return {
|
|
|
code: "",
|
|
|
formData: {
|
|
|
certType: "1"
|
|
|
},
|
|
|
formRules: {
|
|
|
name: [
|
|
|
{required: true, message: "请输入姓名", trigger: "blur"}
|
|
|
],
|
|
|
tel: [
|
|
|
{required: true, message: "请输入电话", trigger: "blur"}
|
|
|
],
|
|
|
certType: [
|
|
|
{required: true, message: "请选择证件类型", trigger: "blur"}
|
|
|
],
|
|
|
certCode: [
|
|
|
{required: true, message: "请输入证件号码", trigger: "blur"}
|
|
|
],
|
|
|
},
|
|
|
loading: false,
|
|
|
uploadUrl: "",
|
|
|
fileList: [],
|
|
|
fileList2: [],
|
|
|
hiddenAdd: false,
|
|
|
hiddenAdd2: false,
|
|
|
headers: {},
|
|
|
};
|
|
|
},
|
|
|
components: {
|
|
|
draggable,
|
|
|
},
|
|
|
methods: {
|
|
|
submitUpload() {
|
|
|
this.$refs["dataForm"].validate(valid => {
|
|
|
if (valid) {
|
|
|
if (this.$refs.upload.uploadFiles.length > 0) {
|
|
|
this.$refs.upload.submit();
|
|
|
} else if (this.$refs.upload2.uploadFiles.length > 0) {
|
|
|
this.$refs.upload2.submit();
|
|
|
} else if (this.$isBlank(this.idQuery)) {
|
|
|
this.$message.warning(`请选择文件`);
|
|
|
} else {
|
|
|
this.onSubmit();
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
},
|
|
|
openFile(filePath) {
|
|
|
window.open(BASE_URL + "/udiwms/image/register/file/getImage?type=image5&name=" + filePath)
|
|
|
},
|
|
|
updateAuditStatus(num) {
|
|
|
this.formData.auditStatus = num;
|
|
|
updateCompanySalesman(this.formData).then(response => {
|
|
|
this.loading = false;
|
|
|
if (response.code === 20000) {
|
|
|
this.$message.success("成功");
|
|
|
this.closeDialog(true);
|
|
|
} else {
|
|
|
this.$message.error(response.message);
|
|
|
}
|
|
|
});
|
|
|
},
|
|
|
onSubmit() {
|
|
|
this.loading = true;
|
|
|
if (this.$isBlank(this.idQuery)) {
|
|
|
this.formData.customerId = store.getters.customerId;
|
|
|
insertCompanySalesman(this.formData).then(response => {
|
|
|
this.loading = false;
|
|
|
if (response.code === 20000) {
|
|
|
this.$message.success("添加成功");
|
|
|
this.closeDialog(true);
|
|
|
} else {
|
|
|
this.$message.error(response.message);
|
|
|
}
|
|
|
});
|
|
|
} else {
|
|
|
updateCompanySalesman(this.formData).then(response => {
|
|
|
this.loading = false;
|
|
|
if (response.code === 20000) {
|
|
|
this.$message.success("修改成功");
|
|
|
this.closeDialog(true);
|
|
|
} else {
|
|
|
this.$message.error(response.message);
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
},
|
|
|
uploadHandleExceed(files, fileList) {
|
|
|
this.$message.warning(`当前限制选择 1 个文件,本次选择了 ${files.length} 个文件,共选择了 ${files.length + fileList.length} 个文件`);
|
|
|
},
|
|
|
uploadOnchange(file, fileList) {
|
|
|
let fileName = file.name;
|
|
|
let uid = file.uid
|
|
|
let pos = fileName.lastIndexOf(".");
|
|
|
let lastName = fileName.substring(pos, fileName.length);
|
|
|
if (lastName.toLowerCase() !== ".jpg" && lastName.toLowerCase() !== ".png") {
|
|
|
this.$message.error("上传文件只能是 .jpg,.png 格式");
|
|
|
for (let i = 0; i < fileList.length; i++) {//从list删除
|
|
|
if (fileList[i].uid === uid) {
|
|
|
fileList.splice(i, 1)
|
|
|
}
|
|
|
}
|
|
|
return;
|
|
|
}
|
|
|
// 限制上传文件的大小
|
|
|
const isLt = file.size / 1024 / 1024 / 2 <= 1;
|
|
|
if (!isLt) {
|
|
|
this.$message.error("上传文件大小不能超过 2MB");
|
|
|
for (let i = 0; i < fileList.length; i++) {
|
|
|
if (fileList[i].uid === uid) {
|
|
|
fileList.splice(i, 1)
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
return isLt;
|
|
|
},
|
|
|
uploadHandleSuccess(response, file, fileList) {
|
|
|
if (response.code === 20000) {
|
|
|
if (this.$isBlank(this.idQuery)) {
|
|
|
this.formData.filePath = response.data.name;
|
|
|
} else {
|
|
|
this.formData.newFilePath = response.data.name;
|
|
|
}
|
|
|
if(this.$refs.upload2.uploadFiles.length > 0) {
|
|
|
this.$refs.upload2.submit();
|
|
|
} else {
|
|
|
this.onSubmit();
|
|
|
}
|
|
|
} else {
|
|
|
this.$message.error("文件上传失败:" + response.message);
|
|
|
}
|
|
|
},
|
|
|
uploadHandleSuccess2(response, file, fileList) {
|
|
|
if (response.code === 20000) {
|
|
|
if (this.$isBlank(this.idQuery)) {
|
|
|
this.formData.filePath2 = response.data.name;
|
|
|
} else {
|
|
|
this.formData.newFilePath2 = response.data.name;
|
|
|
}
|
|
|
this.onSubmit();
|
|
|
} else {
|
|
|
this.$message.error("文件上传失败:" + response.message);
|
|
|
}
|
|
|
},
|
|
|
},
|
|
|
filters: {},
|
|
|
mounted() {
|
|
|
document.body.ondrop = function (event) {
|
|
|
event.preventDefault();
|
|
|
event.stopPropagation();
|
|
|
};
|
|
|
},
|
|
|
created() {
|
|
|
this.uploadUrl = BASE_URL + "/udiwms/upload/register/file";
|
|
|
if (this.$isNotBlank(this.idQuery)) {
|
|
|
this.formData = this.idQuery.formData;
|
|
|
if (this.$isNotBlank(this.idQuery.toView)) {
|
|
|
this.hiddenAdd = true;
|
|
|
if (this.$isNotBlank(this.idQuery.toView2)) {
|
|
|
this.hiddenAdd2 = true;
|
|
|
}
|
|
|
} else {
|
|
|
this.hiddenAdd = false;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
this.headers = {
|
|
|
ADMIN_ID: store.getters.adminId,
|
|
|
ADMIN_TOKEN: store.getters.token,
|
|
|
};
|
|
|
},
|
|
|
};
|
|
|
</script>
|
|
|
<style>
|
|
|
|
|
|
.ao-text {
|
|
|
width: 100%;
|
|
|
font-size: 13px;
|
|
|
font-family: "Microsoft YaHei";
|
|
|
float: right;
|
|
|
text-align: right;
|
|
|
margin-top: 10px;
|
|
|
}
|
|
|
|
|
|
</style>
|
|
|
|
|
|
|
|
|
|