<template>
|
<div class="box-a">
|
<v-header title="新增/编辑社单位"></v-header>
|
<div style="max-width: 800px">
|
<el-form
|
ref="form"
|
label-width="140px"
|
>
|
<el-form-item
|
required
|
label="单位名称:"
|
>
|
<el-input
|
:maxlength="35"
|
v-model="os.comName"
|
@input="toGanDiaoFuhao(os.comName,'comName')"
|
></el-input>
|
</el-form-item>
|
<el-form-item
|
required
|
label="详细地址:"
|
>
|
<el-input
|
@blur="address"
|
:maxlength="35"
|
v-model="os.address"
|
placeholder="请按照格式:必须以 xx社区开头"
|
@input="toGanDiaoFuhao(os.address,'address')"
|
></el-input>
|
</el-form-item>
|
<el-form-item
|
required
|
label="所属地:"
|
>
|
<el-input
|
readonly
|
:value="Territory.text"
|
></el-input>
|
</el-form-item>
|
<el-form-item
|
required
|
label="公司法人:"
|
>
|
<el-input
|
:maxlength="15"
|
v-model="os.legalPerson"
|
@input="toGanDiaoFuhao(os.legalPerson,'legalPerson')"
|
></el-input>
|
</el-form-item>
|
<el-form-item
|
required
|
label="负责人:"
|
>
|
<el-input
|
v-model="os.leader"
|
:maxlength="15"
|
@input="toGanDiaoFuhao(os.leader,'leader')"
|
></el-input>
|
</el-form-item>
|
<el-form-item
|
required
|
label="联系方式:"
|
>
|
<el-input
|
v-model="os.contactsPhone"
|
:maxlength="11"
|
@input="toGanDiaoFeiNum(os.contactsPhone,'contactsPhone')"
|
></el-input>
|
</el-form-item>
|
<el-form-item
|
required
|
label="人员规模:"
|
>
|
<el-input
|
:maxlength="4"
|
v-model="os.scope"
|
@input="toGanDiaoFeiNum(os.scope,'scope')"
|
></el-input>
|
</el-form-item>
|
<el-form-item
|
required
|
label="统一社会信用码:"
|
>
|
<el-input
|
:maxlength="18"
|
v-model="os.creditCode"
|
@input="toGanDiaoFeiNum(os.creditCode,'creditCode')"
|
></el-input>
|
</el-form-item>
|
</el-form>
|
<div>
|
<el-button
|
@click="sub()"
|
size="medium"
|
type="primary"
|
>确认</el-button>
|
<el-button
|
@click="back"
|
size="medium"
|
>取消</el-button>
|
</div>
|
</div>
|
</div>
|
</template>
|
<script>
|
export default {
|
props: [],
|
components: {},
|
data() {
|
return {
|
os: {
|
comName: "",
|
provinceAdcode: "",
|
cityAdcode: "",
|
districtAdcode: "",
|
address: "",
|
legalPerson: "",
|
leader: "",
|
contactsPhone: "",
|
scope: "",
|
creditCode: "",
|
},
|
Territory: {},
|
options: [],
|
options1: [],
|
options2: [],
|
};
|
},
|
created() {
|
if (this.$route.query.id) {
|
this.os.id = this.$route.query.id;
|
this.detail(this.os.id);
|
}
|
this.province();
|
this.belongs();
|
},
|
methods: {
|
toGanDiaoFuhao(str, name) {
|
this.os[name] = (str + "").replace(
|
/[\ |\~|\`|\!|\@|\#|\$|\%|\^|\&|\*|\(|\)|\-|\_|\+|\=|\||\\|\[|\]|\{|\}|\;|\:|\"|\'|\,|\<|\.|\>|\/|\?/\,/\。/\;/\:/\“/\”/\》/\《/\|/\{/\}/\、/\!/\~/\`]/g,
|
""
|
);
|
},
|
toGanDiaoFeiNum(n, name) {
|
n += "";
|
this.os[name] = isNaN(n) ? n.substring(0, n.length - 1) : n;
|
},
|
province() {
|
//省
|
this.$api.get(
|
"common/data/province",
|
"",
|
(e) => {
|
this.options = e;
|
},
|
(err) => {
|
console.log(err);
|
}
|
);
|
},
|
city1() {
|
//市
|
this.os.cityAdcode = "";
|
this.os.districtAdcode = "";
|
this.city();
|
},
|
city() {
|
//市
|
this.$api.get(
|
"common/data/city?provinceAdcode=" + this.os.provinceAdcode,
|
"",
|
(e) => {
|
this.options1 = e;
|
},
|
(err) => {
|
console.log(err);
|
}
|
);
|
},
|
district1() {
|
//区县
|
this.os.districtAdcode = "";
|
this.district();
|
},
|
district() {
|
//区县
|
this.$api.get(
|
"common/data/district?cityAdcode=" + this.os.cityAdcode,
|
"",
|
(e) => {
|
this.options2 = e;
|
}
|
);
|
},
|
back() {
|
this.$router.back();
|
},
|
sub() {
|
if (this.os.comName === "") {
|
return demo.toast("请输入单位名称");
|
}
|
if (this.os.address === "") {
|
return demo.toast("请输入详细地址");
|
}
|
if (!this.Territory.text) {
|
return demo.toast("请输入正确格式的详细地址以进行匹配");
|
}
|
if (this.os.legalPerson === "") {
|
return demo.toast("请输入公司法人");
|
}
|
if (this.os.leader === "") {
|
return demo.toast("请输入负责人");
|
}
|
if (this.os.contactsPhone === "") {
|
return demo.toast("请输入联系方式");
|
}
|
if (this.os.scope === "") {
|
return demo.toast("请输入人员规模");
|
}
|
if (this.os.creditCode === "") {
|
return demo.toast("请输入统一社会信用码");
|
}
|
if (isNaN(this.os.scope)) {
|
return demo.toast("请正确输入人员规模");
|
}
|
this.$api.post("common/data/company/save", this.os, (e) => {
|
this.back();
|
// console.log(e);
|
});
|
},
|
address() {
|
//
|
// this.os.address
|
let index = this.os.address.indexOf("社区");
|
if (index != -1) {
|
let str = this.os.address.slice(0, index + 2);
|
this.belongs(str);
|
}
|
},
|
belongs(str) {
|
let data = {
|
actName: str,
|
// actName:'东郊记忆1号'
|
};
|
this.$api.post("common/data/company/belongs", data, (e) => {
|
if (e === null) {
|
for (let i in this.Territory) {
|
this.Territory[i] = "";
|
}
|
return demo.toast("请输入正确格式的详细地址以进行匹配");
|
}
|
this.os.provinceAdcode = e.provinceAdcode;
|
this.os.cityAdcode = e.cityAdcode;
|
this.os.districtAdcode = e.districtAdcode;
|
this.Territory = e;
|
this.$set(
|
this.Territory,
|
"text",
|
`${e.provinceName}${e.cityName}${e.districtName}${e.communityName}${e.streetName}`
|
);
|
// this.Territory.text = `${e.provinceName}${e.cityName}${e.districtName}${e.communityName}${e.streetName}`
|
});
|
},
|
detail(id) {
|
//查询详情
|
this.$api.get("common/data/company/detail?id=" + id, "", (e) => {
|
this.os = e;
|
this.address();
|
// this.city()
|
// this.district()
|
});
|
},
|
},
|
computed: {},
|
};
|
</script>
|
<style scoped>
|
.box-a {
|
overflow: scroll;
|
}
|
</style>
|