Commit d623f059 authored by wangxl's avatar wangxl

22222

parent 2803a089
<template>
<div class="app-content">
<div class="card-left border-style">
<div class="holder-photo"><img alt="" src="https://gw.alipayobjects.com/zos/antfincdn/XAosXuNZyF/BiazfanxmamNRoxxVxka.png">
<div class="holder-name">
<!-- <a title="修改" style="text-decoration:none;" href="#">[修改]</a> -->
</div>
</div>
<div class="holder-info">
<a-row>
<a-col :span="6" class="title">
邮 箱
</a-col>
<a-col :span="18">
{{personInfo.email}}
</a-col>
</a-row>
<a-row>
<a-col :span="6" class="title">
手机号
</a-col>
<a-col :span="18">
{{personInfo.mobile}}
<!-- <a title="修改" style="text-decoration:none;" href="#">[修改]</a> -->
</a-col>
</a-row>
<a-divider dashed />
<a-row>
<a-col :span="6" class="title">
姓 名
</a-col>
<a-col :span="18">
{{personInfo.personName}}
</a-col>
</a-row>
<a-row>
<a-col :span="6" class="title">
性 别
</a-col>
<a-col :span="18">
{{personInfo.sex}}
</a-col>
</a-row>
<a-row>
<a-col :span="6" class="title">
生 日
</a-col>
<a-col :span="18">
{{personInfo.birthday}}
</a-col>
</a-row>
<a-row>
<a-col :span="6" class="title">
证件号
</a-col>
<a-col :span="18">
{{personInfo.certId}}
</a-col>
</a-row>
</div>
</div>
<div class="card-right border-style">
<div class="app-content" style="height:100%;overflow:auto;">
<div style="height: calc(100% - 32px);overflow:auto;margin-top: 16px;">
<a-spin :spinning="loading" style="width: 100%;height: 100%;">
<a-tabs :activeKey="tabsActive" @tabClick="tabclick">
<a-tab-pane key="1" tab="设置">
</a-tab-pane>
<a-tab-pane key="2" tab="消息" force-render>
</a-tab-pane>
</a-tabs>
<div v-show="tabsActive!='1'">
<a-empty />
</div>
<div v-show="tabsActive=='1'">
<a-form-model ref="form" :model="formData" :rules="rules">
<a-form-model-item label="姓 名" prop="personName">
<a-input v-model="formData.personName" :maxLength="30" style="width:180px;" />
</a-form-model-item>
<a-form-model-item label="民 族" prop="nation">
<para-select v-model="formData.nation" :width="180" :typeId="11" />
</a-form-model-item>
<a-form-model-item label="学 历" prop="education">
<para-select v-model="formData.education" :width="180" :typeId="8" />
</a-form-model-item>
<a-form-model-item label="职 称" prop="title">
<para-multi-select :width="180" v-model="formData.title" :typeId="7" />
</a-form-model-item>
<a-form-model-item label="专 业" prop="spec">
<para-multi-select :width="180" v-model="formData.spec" :typeId="57" />
</a-form-model-item>
<a-form-model-item label="邮 箱" prop="email">
<a-input v-model="formData.email" :maxLength="30" style="width:180px;" />
</a-form-model-item>
<a-row>
<a-col style="text-align: center;width:100%;">
<a-button type="primary" style="width:80px;" @click="submit">保存</a-button>
<info-edit :formData.sync="formData" @load="onLoad" ref="infoEdit" />
<a-row style="text-align: center;margin-top: 6px;">
<a-col :span="24">
<a-button type="primary" @click="submit">保存</a-button>
</a-col>
</a-row>
</a-form-model>
</div>
</a-spin>
</div>
</div>
</template>
<script>
import { isEmptyParams, hideIdCard, hidePhone, checkEmail } from "@/views/utils/common"
import paraMultiSelect from '@/views/components/common/paraMultiSelect'
import paraSelect from '@/views/components/common/paraSelect'
import moment from 'moment'
import infoEdit from '@/views/basicSetting/unit/components/infoEdit'
export default {
name: 'personInfo',
name: "unitEdit",
components: {
paraMultiSelect, paraSelect
infoEdit
},
data () {
return {
tabsActive: '1',
personInfo: {
id: null, certId: null, personName: null, sex: null, birthday: null, nation: null, title: null, education: null, spec: null, mobile: null, email: null,
},
formData: {
id: null, personName: null, nation: null, title: null, education: null, spec: null, email: null,
},
rules: {
personName: [{ required: true, message: '请输入姓名', trigger: 'blur' },],
nation: [{ required: false, message: '请选择民族', trigger: 'change' }],
title: [{ required: false, message: '请选择职称', trigger: 'change' }],
education: [{ required: false, message: '请选择学历', trigger: 'change' }],
spec: [{ required: false, message: '请选择专业', trigger: 'change' }],
email: [{ required: false, validator: checkEmail, trigger: 'blur' }],
id: null,
unitName: null,
unitType: null,
unitAddress: null,
linkName: null,
telephone: null,
email: null,
fax: null,
organizationCode: null,
registeredAddress: null,
postCode: null,
legalPerson: null,
workforce: null,
specializedPersonnel: null,
researchPersonnel: null,
depositBank: null,
bankAccount: null,
depositBankAddress: null,
interbankNumber: null,
},
loading: false
}
},
created () {
this.getUserInfo()
this.getCurrentUnitInfo()
},
methods: {
moment,
tabclick (key) {
this.tabsActive = key
},
getUserInfo () {
this.$api.person.getUserInfo().then(({ data = {} }) => {
if (data) {
this.personInfo = data
this.personInfo.birthday = moment(this.personInfo.birthday).format('YYYY-MM-DD')
this.initformData()
}
}).catch(() => { })
},
submit () {
this.$refs.form.validate(valid => {
if (valid) {
getCurrentUnitInfo () {
this.loading = true
let pars = isEmptyParams(this.formData)
let par = { ...pars }
this.$api.person.updatePerson(par).then(({ data = {} }) => {
this.$api.unit.getCurrentUnitInfo().then(({ data = {} }) => {
if (data) {
this.$message.success('修改成功!')
this.getCurrentPersonInfo()
this.formData = data
}
this.loading = false
}).catch(() => { this.loading = false })
} else {
return false;
}
});
}).catch(() => {
this.loading = false
})
},
initformData () {
this.formData = {
id: this.personInfo.id,
personName: this.personInfo.personName,
nation: this.personInfo.nation,
title: this.personInfo.title,
education: this.personInfo.education,
spec: this.personInfo.spec,
email: this.personInfo.email,
}
submit () {
this.$refs.infoEdit.submit()
},
onLoad (value) {
this.loading = value
},
getCurrentPersonInfo () {
Object.assign(this.personInfo, this.formData)
}
}
}
</script>
\ No newline at end of file
<style scoped lang="less">
.app-content {
padding: 10px 8px 10px 8px;
min-width: 920px;
.border-style {
border-radius: 4px;
border: 1px solid #e6ebf5;
background-color: #ffffff;
overflow: hidden;
color: #303133;
-webkit-transition: 0.3s;
transition: 0.3s;
}
.card-left {
float: left;
width: 300px;
height: 600px;
margin-right: 6px;
.holder-photo {
margin: 20px 0px 10px 0px;
text-align: center;
}
.holder-photo > img {
width: 104px;
height: 104px;
margin-bottom: 10px;
}
.holder-info {
padding: 0px 10px 0px 10px;
.ant-row .ant-col {
padding: 3px 5px 3px 5px;
}
}
.title {
text-align: right;
}
}
.card-right {
float: left;
width: calc(100% - 320px);
min-width: 600px;
min-height: 200px;
padding: 0px 15px 15px 15px;
.ant-form-item {
margin-bottom: 6px;
}
::v-deep .ant-row {
.ant-col {
display: inline-block;
}
.ant-form-item-label {
width: 70px;
}
.ant-form-item-control-wrapper {
width: calc(100% - 70px);
}
.ant-form-explain {
margin-left: 5px;
display: inline-block;
}
}
}
}
</style>
<template>
<div>
<a-form-model ref="form" :model="formData" :rules="rules" class="from-table">
<a-row>
<a-col :span="4" class="bg-gray">
<div class="required">单位名称</div>
</a-col>
<a-col :span="20">
<a-form-model-item prop="unitName">
<a-input v-model="formData.unitName" placeholder="单位名称" style="width:400px" />
</a-form-model-item>
</a-col>
</a-row>
<a-row>
<a-col :span="4" class="bg-gray">
<div class="required">单位类型</div>
</a-col>
<a-col :span="20">
<a-form-model-item prop="unitType">
<base-select v-model="formData.unitType" :type="6" :isAll="true" />
</a-form-model-item>
</a-col>
</a-row>
<a-row>
<a-col :span="4" class="bg-gray">
<div class="required">单位地址</div>
</a-col>
<a-col :span="20">
<a-form-model-item prop="unitAddress">
<a-input v-model="formData.unitAddress" :maxLength="30" style="width:400px" />
</a-form-model-item>
</a-col>
</a-row>
<a-row type="flex">
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">联系人</div>
</div>
</a-col>
<a-col :span="8">
<div class="special-middle">
<div>
<a-form-model-item prop="linkName">
<a-input placeholder="联系人" v-model="formData.linkName" :maxLength="50" style="width:80%" />
</a-form-model-item>
</div>
</div>
</a-col>
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">电话</div>
</div>
</a-col>
<a-col :span="8">
<div class="special-middle">
<div>
<a-form-model-item prop="telephone">
<a-input placeholder="电话" v-model="formData.telephone" :maxLength="50" style="width:80%" />
</a-form-model-item>
</div>
</div>
</a-col>
</a-row>
<a-row type="flex">
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">电子信箱</div>
</div>
</a-col>
<a-col :span="8">
<div class="special-middle">
<div>
<a-form-model-item prop="email">
<a-input placeholder="电子信箱" v-model="formData.email" :maxLength="50" style="width:80%" />
</a-form-model-item>
</div>
</div>
</a-col>
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">传真</div>
</div>
</a-col>
<a-col :span="8">
<div class="special-middle">
<div>
<a-form-model-item prop="fax">
<a-input placeholder="传真" v-model="formData.fax" :maxLength="50" style="width:80%" />
</a-form-model-item>
</div>
</div>
</a-col>
</a-row>
<a-row type="flex">
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">组织机构代码</div>
</div>
</a-col>
<a-col :span="20">
<div class="special-middle">
<div>
<a-form-model-item prop="organizationCode">
<a-input placeholder="组织机构代码/统一社会信用代码" v-model="formData.organizationCode" :maxLength="100" style="width:400px" />
</a-form-model-item>
</div>
</div>
</a-col>
</a-row>
<a-row type="flex">
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">注册所在地(县/区)</div>
</div>
</a-col>
<a-col :span="8">
<div class="special-middle">
<div>
<a-form-model-item prop="registeredAddress">
<a-input placeholder="注册所在地" v-model="formData.registeredAddress" :maxLength="100" style="width:80%" />
</a-form-model-item>
</div>
</div>
</a-col>
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">邮编</div>
</div>
</a-col>
<a-col :span="8">
<div class="special-middle">
<div>
<a-form-model-item prop="postCode">
<a-input placeholder="邮编" v-model="formData.postCode" :maxLength="10" style="width:80%" />
</a-form-model-item>
</div>
</div>
</a-col>
</a-row>
<a-row type="flex">
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">法定代表人</div>
</div>
</a-col>
<a-col :span="8">
<div class="special-middle">
<div>
<a-form-model-item prop="legalPerson">
<a-input placeholder="法定代表人" v-model="formData.legalPerson" :maxLength="50" style="width:80%" />
</a-form-model-item>
</div>
</div>
</a-col>
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">职工总数</div>
</div>
</a-col>
<a-col :span="8">
<div class="special-middle">
<div>
<a-form-model-item prop="workforce">
<a-input-number v-model="formData.workforce" :min="0" :step="1" style="width: 100px" />
</a-form-model-item>
</div>
</div>
</a-col>
</a-row>
<a-row type="flex">
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">其中专科以上人员</div>
</div>
</a-col>
<a-col :span="8">
<div class="special-middle">
<div>
<a-form-model-item prop="specializedPersonnel">
<a-input-number v-model="formData.specializedPersonnel" :min="0" :step="1" style="width: 100px" />
</a-form-model-item>
</div>
</div>
</a-col>
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">研究开发人员</div>
</div>
</a-col>
<a-col :span="8">
<div class="special-middle">
<div>
<a-form-model-item prop="researchPersonnel">
<a-input-number v-model="formData.researchPersonnel" :min="0" :step="1" style="width: 100px" />
</a-form-model-item>
</div>
</div>
</a-col>
</a-row>
<a-row type="flex">
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">开户银行</div>
</div>
</a-col>
<a-col :span="8">
<div class="special-middle">
<div>
<a-form-model-item prop="depositBank">
<a-input placeholder="开户银行" v-model="formData.depositBank" :maxLength="100" style="width:80%" />
</a-form-model-item>
</div>
</div>
</a-col>
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">银行账号</div>
</div>
</a-col>
<a-col :span="8">
<div class="special-middle">
<div>
<a-form-model-item prop="bankAccount">
<a-input placeholder="银行账号" v-model="formData.bankAccount" :maxLength="100" style="width:80%" />
</a-form-model-item>
</div>
</div>
</a-col>
</a-row>
<a-row type="flex">
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">开户银行地址</div>
</div>
</a-col>
<a-col :span="8">
<div class="special-middle">
<div>
<a-form-model-item prop="depositBankAddress">
<a-input placeholder="开户银行地址" v-model="formData.depositBankAddress" :maxLength="100" style="width:80%" />
</a-form-model-item>
</div>
</div>
</a-col>
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">银行联行号</div>
</div>
</a-col>
<a-col :span="8">
<div class="special-middle">
<div>
<a-form-model-item prop="interbankNumber">
<a-input placeholder="开户银行地址" v-model="formData.interbankNumber" :maxLength="100" style="width:80%" />
</a-form-model-item>
</div>
</div>
</a-col>
</a-row>
</a-form-model>
</div>
</template>
<script>
import { isEmptyParams } from "@/views/utils/common"
import paraMultiSelect from '@/views/components/common/paraMultiSelect'
import paraSelect from '@/views/components/common/paraSelect'
import baseSelect from '@/views/components/common/baseSelect'
export default {
name: "infoEdit",
components: {
paraMultiSelect, paraSelect, baseSelect
},
data () {
return {
rules: {
unitName: [{ required: true, message: '*' }],
unitType: [{ required: true, message: '*' }],
unitAddress: [{ required: true, message: '*' }],
linkName: [{ required: true, message: '*' }],
telephone: [{ required: true, message: '*' }],
email: [{ required: true, message: '*' }],
fax: [{ required: true, message: '*' }],
organizationCode: [{ required: true, message: '*', trigger: 'blur' },],
registeredAddress: [{ required: true, message: '*', trigger: 'blur' },],
postCode: [{ required: true, message: '*', trigger: 'blur' },],
legalPerson: [{ required: true, message: '*', trigger: 'blur' },],
workforce: [{ required: true, message: '*', trigger: 'blur' },],
specializedPersonnel: [{ required: true, message: '*', trigger: 'blur' },],
researchPersonnel: [{ required: true, message: '*', trigger: 'blur' },],
depositBank: [{ required: true, message: '*', trigger: 'blur' },],
bankAccount: [{ required: true, message: '*', trigger: 'blur' },],
depositBankAddress: [{ required: true, message: '*', trigger: 'blur' },],
interbankNumber: [{ required: true, message: '*', trigger: 'blur' },],
// unitName: [{ required: true, message: '请输入单位名称' }],
// unitType: [{ required: true, message: '请选择单位类型' }],
// unitAddress: [{ required: true, message: '请输入单位地址' }],
// linkName: [{ required: true, message: '请输入联系人' }],
// telephone: [{ required: true, message: '请输入电话' }],
// email: [{ required: true, message: '请输入电子信箱' }],
// fax: [{ required: true, message: '请输入传真' }],
// organizationCode: [{ required: true, message: '请填写组织机构代码/统一社会信用代码', trigger: 'blur' },],
// registeredAddress: [{ required: true, message: '请填写注册所在地', trigger: 'blur' },],
// postCode: [{ required: true, message: '请填写邮编', trigger: 'blur' },],
// legalPerson: [{ required: true, message: '请填写法定代表人', trigger: 'blur' },],
// workforce: [{ required: true, message: '请填写职工总数', trigger: 'blur' },],
// specializedPersonnel: [{ required: true, message: '请填写其中专科以上人员', trigger: 'blur' },],
// researchPersonnel: [{ required: true, message: '请填写研究开发人员', trigger: 'blur' },],
// depositBank: [{ required: true, message: '请填写开户银行', trigger: 'blur' },],
// bankAccount: [{ required: true, message: '请填写银行账号', trigger: 'blur' },],
// depositBankAddress: [{ required: true, message: '请填写开户银行地址', trigger: 'blur' },],
// interbankNumber: [{ required: true, message: '请填写开户银行地址', trigger: 'blur' },],
},
managersState: true,
loading: false
}
},
props: {
formData: {
type: Object,
default: () => {
return null
}
},
},
created () {
},
methods: {
submit () {
//提交单位数据
this.$refs.form.validate(valid => {
if (valid) {
this.$emit('load', true)
this.$api.unit.updateUnit(par).then(({ data = {} }) => {
if (data) {
this.$message.success('修改成功!')
this.$emit('load', false)
}
}).catch(() => {
this.$emit('load', false)
})
} else {
this.$message.warn('信息未填写完全!')
return false
}
})
}
}
}
</script>
\ No newline at end of file
......@@ -107,7 +107,7 @@
</div>
</a-col>
</a-row>
<!-- <a-row type="flex">
<a-row type="flex">
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">法定代表人</div>
......@@ -166,8 +166,8 @@
</div>
</div>
</a-col>
</a-row> -->
<!-- <a-row type="flex">
</a-row>
<a-row type="flex">
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">开户银行</div>
......@@ -196,8 +196,8 @@
</div>
</div>
</a-col>
</a-row> -->
<!-- <a-row type="flex">
</a-row>
<a-row type="flex">
<a-col :span="4" class="bg-gray">
<div class="special-middle">
<div class="required">开户银行地址</div>
......@@ -226,7 +226,7 @@
</div>
</div>
</a-col>
</a-row> -->
</a-row>
<!-- <a-row type="flex">
<a-col :span="4" class="bg-gray">
<div class="special-middle">
......@@ -772,14 +772,14 @@ export default {
address: [{ required: true, message: '请填写通讯地址', trigger: 'blur' },],
registeredAddress: [{ required: true, message: '请填写注册所在地', trigger: 'blur' },],
postCode: [{ required: true, message: '请填写邮编', trigger: 'blur' },],
// legalPerson: [{ required: true, message: '请填写法定代表人', trigger: 'blur' },],
// workforce: [{ required: true, message: '请填写职工总数', trigger: 'blur' },],
// specializedPersonnel: [{ required: true, message: '请填写其中专科以上人员', trigger: 'blur' },],
// researchPersonnel: [{ required: true, message: '请填写研究开发人员', trigger: 'blur' },],
// depositBank: [{ required: true, message: '请填写开户银行', trigger: 'blur' },],
// bankAccount: [{ required: true, message: '请填写银行账号', trigger: 'blur' },],
// depositBankAddress: [{ required: false, message: '请填写开户银行地址', trigger: 'blur' },],
// interbankNumber: [{ required: false, message: '请填写开户银行地址', trigger: 'blur' },],
legalPerson: [{ required: true, message: '请填写法定代表人', trigger: 'blur' },],
workforce: [{ required: true, message: '请填写职工总数', trigger: 'blur' },],
specializedPersonnel: [{ required: true, message: '请填写其中专科以上人员', trigger: 'blur' },],
researchPersonnel: [{ required: true, message: '请填写研究开发人员', trigger: 'blur' },],
depositBank: [{ required: true, message: '请填写开户银行', trigger: 'blur' },],
bankAccount: [{ required: true, message: '请填写银行账号', trigger: 'blur' },],
depositBankAddress: [{ required: true, message: '请填写开户银行地址', trigger: 'blur' },],
interbankNumber: [{ required: true, message: '请填写开户银行地址', trigger: 'blur' },],
// researchTotal: [{ required: true, message: '请填写上年度研发经费支出总额', trigger: 'blur' },],
// isResearchActive: [{ required: true, message: '请选择上年度是否填报了研发活动情况', trigger: 'change' },],
// researchCount: [{ required: true, message: '请填写上一年度填报的研发投入总数', trigger: 'blur' },],
......
......@@ -449,7 +449,7 @@
.header_btn {
position: absolute;
top: 0px;
right: 20px;
right: 10px;
text-align: right;
max-width: 350px;
line-height: 46px;
......
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