Commit f6332c83 authored by wangxl's avatar wangxl
parents a08f9ab6 21255ac5
...@@ -145,6 +145,9 @@ export default { ...@@ -145,6 +145,9 @@ export default {
getUnitById (params) { getUnitById (params) {
return fetch('/v1/science-admin/com-unit/getUnitById', params) return fetch('/v1/science-admin/com-unit/getUnitById', params)
}, },
getListByUnitName (params) {
return fetch('/v1/science-admin/com-unit/getListByUnitName', params)
},
addUnit (params) { addUnit (params) {
return fetch('/v1/science-admin/com-unit/addUnit', params, 'post', 'json') return fetch('/v1/science-admin/com-unit/addUnit', params, 'post', 'json')
}, },
......
...@@ -8,18 +8,23 @@ ...@@ -8,18 +8,23 @@
</div> </div>
</a-col> </a-col>
</a-row> </a-row>
<a-row> <!-- <a-row>
<a-col :span="24"> <a-col :span="24">
<a-form-model-item ref="upTreeCode" label="上级单位" prop="upTreeCode"> <a-form-model-item ref="upTreeCode" label="上级单位" prop="upTreeCode">
<unit-tree-select v-model="formData.upTreeCode" :unitType="0" /> <unit-tree-select v-model="formData.upTreeCode" :unitType="0" />
</a-form-model-item> </a-form-model-item>
</a-col> </a-col>
</a-row> </a-row> -->
<a-row> <a-row>
<a-col :span="24"> <a-col :span="24">
<a-form-model-item ref="unitName" label="单位名称" prop="unitName"> <a-form-model-item ref="unitName" label="单位名称" prop="unitName">
<a-input v-model="formData.unitName" @blur="() => {$refs.unitName.onFieldBlur(); }" style="width: 350px;" /> <a-input v-model="formData.unitName" @blur="() => {$refs.unitName.onFieldBlur(); }" style="width: 350px;" />
</a-form-model-item> <!-- <a-select v-model="formData.unitName" showSearch placeholder="请输入单位名称" :filterOption="filterOption" @search="onSearch" @change="handleChange" style="width: 350px;">
<a-select-option v-for="item in selectData" :key="item.key" :value="item.key">
{{ item.title }}
</a-select-option>
</a-select>-->
</a-form-model-item>
</a-col> </a-col>
</a-row> </a-row>
<a-row> <a-row>
...@@ -142,7 +147,25 @@ export default { ...@@ -142,7 +147,25 @@ export default {
visibleCheck: false, visibleCheck: false,
unitRules: { unitRules: {
upTreeCode: [{ required: true, message: '请选择单位', trigger: 'change' }], upTreeCode: [{ required: true, message: '请选择单位', trigger: 'change' }],
unitName: [{ required: true, message: '请输入单位名称', trigger: 'blur' }], unitName: [
{ required: true, message: '请输入单位名称', trigger: 'blur' },
{
validator: (rule, value, callback) => {
if (value == '' || value == undefined) {
callback()
}
else {
let pars = { UnitName: value }
this.$api.unit.getListByUnitName(pars).then(({ data = {} }) => {
if (data && data.length > 0) {
callback(new Error("单位已存在"));
} else
callback()
})
}
}
}
],
unitType: [{ required: true, message: '请选择单位类型', trigger: 'change' }], unitType: [{ required: true, message: '请选择单位类型', trigger: 'change' }],
organizationCode: [{ required: true, message: '请输入机构代码', trigger: 'blur' }], organizationCode: [{ required: true, message: '请输入机构代码', trigger: 'blur' }],
unitAddress: [{ required: true, message: '请输入地址', trigger: 'blur' }], unitAddress: [{ required: true, message: '请输入地址', trigger: 'blur' }],
...@@ -240,6 +263,7 @@ export default { ...@@ -240,6 +263,7 @@ export default {
], ],
code: [{ required: true, message: '请输入验证码', trigger: 'blur' }], code: [{ required: true, message: '请输入验证码', trigger: 'blur' }],
}, },
selectData: [],
} }
}, },
props: { props: {
...@@ -254,6 +278,28 @@ export default { ...@@ -254,6 +278,28 @@ export default {
}, },
methods: { methods: {
onSearch(value) {
let pars = { UnitName: value }
this.$api.unit.getListByUnitName(pars).then(({ data = {} }) => {
this.selectData = []
// 模拟从数据库查询数据
const matchedOptions = data.filter(option => option.title.includes(value));
if (matchedOptions.length > 0) {
matchedOptions.forEach(e => {
this.selectData.push(e)
})
} else {
this.selectData.push({ title: value, key: "00000000-0000-0000-0000-000000000000" })
}
})
},
filterOption(input, option) {
// 自定义过滤逻辑,如果没有匹配的选项就保留输入值
return option.componentOptions.children[0].text.toLowerCase().indexOf(input.toLowerCase()) >= 0;
},
handleChange(value) {
this.formData.unitName = value
},
verifiMobile () { verifiMobile () {
this.$refs.from.validateField('mobile', (error) => { this.$refs.from.validateField('mobile', (error) => {
if (!error) { if (!error) {
...@@ -283,6 +329,7 @@ export default { ...@@ -283,6 +329,7 @@ export default {
}, 1000) }, 1000)
}, },
submitUnit () { submitUnit () {
console.log(this.formData)
let cardInfo = null let cardInfo = null
this.$refs.from.validate(valid => { this.$refs.from.validate(valid => {
if (valid) { if (valid) {
......
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