|
@@ -10,24 +10,36 @@
|
|
<el-row :gutter="20">
|
|
<el-row :gutter="20">
|
|
<el-col :span="24">
|
|
<el-col :span="24">
|
|
<el-form ref="form" :model="form" label-width="110px" :rules="rules">
|
|
<el-form ref="form" :model="form" label-width="110px" :rules="rules">
|
|
- <el-form-item label="医院名称" prop="hospitalName" style="display:inline-block;width:300px">
|
|
|
|
- <el-input
|
|
|
|
- v-model="form.hospitalName"
|
|
|
|
- placeholder="2-30位,可输入汉字、字母、数字和下划线"
|
|
|
|
- @blur="handlePinyin($event)"
|
|
|
|
- ></el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
- <el-form-item label="医院名称拼音" prop="spell" style="display:inline-block;width:300px">
|
|
|
|
- <el-input v-model="form.spell" placeholder="请输入医院名称拼音"></el-input>
|
|
|
|
- </el-form-item>
|
|
|
|
|
|
+ <el-row :gutter="20">
|
|
|
|
+ <el-col :span="12">
|
|
|
|
+ <el-form-item
|
|
|
|
+ label="医院名称"
|
|
|
|
+ prop="hospitalName"
|
|
|
|
+ style="width:100%"
|
|
|
|
+ >
|
|
|
|
+ <el-input
|
|
|
|
+ v-model="form.hospitalName"
|
|
|
|
+ placeholder="2-30位,可输入汉字、字母、数字和下划线"
|
|
|
|
+ @blur="handlePinyin($event)"
|
|
|
|
+ ></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+
|
|
|
|
+ <el-col :span="12">
|
|
|
|
+ <el-form-item label="医院名称拼音" prop="spell" style="width:100%">
|
|
|
|
+ <el-input v-model="form.spell" placeholder="请输入医院名称拼音"></el-input>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
+ </el-row>
|
|
|
|
+
|
|
<!-- <el-form-item label="医院编码" prop="hospitalCode">
|
|
<!-- <el-form-item label="医院编码" prop="hospitalCode">
|
|
<el-input v-model="form.hospitalCode" placeholder="4-15位,可输入字母、数字和下划线"></el-input>
|
|
<el-input v-model="form.hospitalCode" placeholder="4-15位,可输入字母、数字和下划线"></el-input>
|
|
</el-form-item>-->
|
|
</el-form-item>-->
|
|
- <el-form-item label="医院地址" prop="address" >
|
|
|
|
|
|
+ <el-form-item label="医院地址" prop="address">
|
|
<el-input v-model="form.address" placeholder="请输入医院地址"></el-input>
|
|
<el-input v-model="form.address" placeholder="请输入医院地址"></el-input>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
- <!-- <p style="text-align: center;padding: 15px 0;border-top: 1px solid #e3e3e3;width: 100%;">关联子医院</p> -->
|
|
|
|
- <el-form-item label="关联子医院">
|
|
|
|
|
|
+ <p style="text-align: center;padding-bottom: 14px;width: 100%;font-size:16px;font-weight: bold;">关联子医院</p>
|
|
|
|
+ <el-form-item >
|
|
<el-table
|
|
<el-table
|
|
size="mini"
|
|
size="mini"
|
|
:data="form.hospitalRelationVOList"
|
|
:data="form.hospitalRelationVOList"
|
|
@@ -107,17 +119,20 @@
|
|
<template slot-scope="scope">
|
|
<template slot-scope="scope">
|
|
<div class="operation">
|
|
<div class="operation">
|
|
<el-button @click="addIndex(scope.$index)" type="text" size="small">
|
|
<el-button @click="addIndex(scope.$index)" type="text" size="small">
|
|
- <i class="el-icon-plus"></i>
|
|
|
|
|
|
+ <img src="../../../images/icon-add.png" alt="新增" />
|
|
</el-button>
|
|
</el-button>
|
|
<el-button @click="delIndex(scope.$index)" type="text" size="small">
|
|
<el-button @click="delIndex(scope.$index)" type="text" size="small">
|
|
- <i class="el-icon-minus" style="color:red"></i>
|
|
|
|
|
|
+ <img src="../../../images/icon-delete.png" alt="删除" />
|
|
</el-button>
|
|
</el-button>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table-column>
|
|
</el-table>
|
|
</el-table>
|
|
<div class="add" v-if="form.hospitalRelationVOList.length == 0">
|
|
<div class="add" v-if="form.hospitalRelationVOList.length == 0">
|
|
- <el-button icon="el-icon-plus" @click="add"></el-button>
|
|
|
|
|
|
+ <!--<el-button icon="el-icon-plus"></el-button>-->
|
|
|
|
+ <p class="add-border" @click="add">
|
|
|
|
+ <img src="../../../images/add-nob.png" alt="新增" />
|
|
|
|
+ </p>
|
|
</div>
|
|
</div>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item>
|
|
<el-form-item>
|
|
@@ -145,53 +160,53 @@
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script>
|
|
<script>
|
|
-import api from '@api/cdss.js';
|
|
|
|
-import pinyin from '../../../js/Convert_Pinyin.js';
|
|
|
|
|
|
+import api from "@api/cdss.js";
|
|
|
|
+import pinyin from "../../../js/Convert_Pinyin.js";
|
|
export default {
|
|
export default {
|
|
- name: 'AddHospital',
|
|
|
|
|
|
+ name: "AddHospital",
|
|
data() {
|
|
data() {
|
|
var numreg = /^[a-zA-Z0-9_\u4e00-\u9fa5]+$/;
|
|
var numreg = /^[a-zA-Z0-9_\u4e00-\u9fa5]+$/;
|
|
var numreg1 = /^[0-9a-zA-Z_]{1,}$/;
|
|
var numreg1 = /^[0-9a-zA-Z_]{1,}$/;
|
|
var validatePass = (rule, value, callback) => {
|
|
var validatePass = (rule, value, callback) => {
|
|
if (!numreg.test(value)) {
|
|
if (!numreg.test(value)) {
|
|
- callback(new Error('汉字、字母、数字和下划线'));
|
|
|
|
|
|
+ callback(new Error("汉字、字母、数字和下划线"));
|
|
} else {
|
|
} else {
|
|
callback();
|
|
callback();
|
|
}
|
|
}
|
|
};
|
|
};
|
|
var validatePass1 = (rule, value, callback) => {
|
|
var validatePass1 = (rule, value, callback) => {
|
|
if (!numreg1.test(value)) {
|
|
if (!numreg1.test(value)) {
|
|
- callback(new Error('字母、数字和下划线'));
|
|
|
|
|
|
+ callback(new Error("字母、数字和下划线"));
|
|
} else {
|
|
} else {
|
|
callback();
|
|
callback();
|
|
}
|
|
}
|
|
};
|
|
};
|
|
return {
|
|
return {
|
|
form: {
|
|
form: {
|
|
- hospitalName: '',
|
|
|
|
- spell: '',
|
|
|
|
|
|
+ hospitalName: "",
|
|
|
|
+ spell: "",
|
|
// hospitalCode: '',
|
|
// hospitalCode: '',
|
|
- address: '',
|
|
|
|
|
|
+ address: "",
|
|
hospitalRelationVOList: []
|
|
hospitalRelationVOList: []
|
|
},
|
|
},
|
|
tableData: [],
|
|
tableData: [],
|
|
rules: {
|
|
rules: {
|
|
hospitalName: [
|
|
hospitalName: [
|
|
- { required: true, message: '医院名称不能为空', trigger: 'change' },
|
|
|
|
- { min: 2, max: 30, message: '长度2-30位', trigger: 'blur' },
|
|
|
|
- { required: true, validator: validatePass, trigger: 'blur' }
|
|
|
|
|
|
+ { required: true, message: "医院名称不能为空", trigger: "change" },
|
|
|
|
+ { min: 2, max: 30, message: "长度2-30位", trigger: "blur" },
|
|
|
|
+ { required: true, validator: validatePass, trigger: "blur" }
|
|
],
|
|
],
|
|
// hospitalCode: [
|
|
// hospitalCode: [
|
|
// { required: true, message: '医院编码不能为空', trigger: 'change' },
|
|
// { required: true, message: '医院编码不能为空', trigger: 'change' },
|
|
// { min: 4, max: 15, message: '长度4-15位', trigger: 'blur' },
|
|
// { min: 4, max: 15, message: '长度4-15位', trigger: 'blur' },
|
|
// { required: true, validator: validatePass1, trigger: 'blur' }
|
|
// { required: true, validator: validatePass1, trigger: 'blur' }
|
|
// ],
|
|
// ],
|
|
- address: [{ max: 200, message: '长度最多200字', trigger: 'change' }],
|
|
|
|
|
|
+ address: [{ max: 200, message: "长度最多200字", trigger: "change" }],
|
|
spell: [
|
|
spell: [
|
|
- { max: 30, message: '医院名称拼音长度最多30位', trigger: 'change' }
|
|
|
|
|
|
+ { max: 30, message: "医院名称拼音长度最多30位", trigger: "change" }
|
|
]
|
|
]
|
|
},
|
|
},
|
|
- hospitalId: '',
|
|
|
|
|
|
+ hospitalId: "",
|
|
isEdit: false,
|
|
isEdit: false,
|
|
saveDisable: false,
|
|
saveDisable: false,
|
|
dialogVisible: false,
|
|
dialogVisible: false,
|
|
@@ -207,21 +222,21 @@ export default {
|
|
// this.form.hospitalCode = data.code;
|
|
// this.form.hospitalCode = data.code;
|
|
this.form.address = data.address;
|
|
this.form.address = data.address;
|
|
this.hospitalId = data.id;
|
|
this.hospitalId = data.id;
|
|
- this.getByhospitalInfoId(data.id)
|
|
|
|
|
|
+ this.getByhospitalInfoId(data.id);
|
|
}
|
|
}
|
|
},
|
|
},
|
|
|
|
|
|
methods: {
|
|
methods: {
|
|
getByhospitalInfoId(id) {
|
|
getByhospitalInfoId(id) {
|
|
- api.getByhospitalInfoId({id:id}).then(res => {
|
|
|
|
- if (res.data.code === '0') {
|
|
|
|
- const data = res.data.data
|
|
|
|
|
|
+ api.getByhospitalInfoId({ id: id }).then(res => {
|
|
|
|
+ if (res.data.code === "0") {
|
|
|
|
+ const data = res.data.data;
|
|
data.hospitalRelationDTOList.forEach((item, index) => {
|
|
data.hospitalRelationDTOList.forEach((item, index) => {
|
|
item.errorOther = false;
|
|
item.errorOther = false;
|
|
item.errorCurrent = false;
|
|
item.errorCurrent = false;
|
|
});
|
|
});
|
|
this.form.hospitalRelationVOList = data.hospitalRelationDTOList;
|
|
this.form.hospitalRelationVOList = data.hospitalRelationDTOList;
|
|
- }
|
|
|
|
|
|
+ }
|
|
});
|
|
});
|
|
},
|
|
},
|
|
onSubmit() {
|
|
onSubmit() {
|
|
@@ -246,21 +261,21 @@ export default {
|
|
});
|
|
});
|
|
}
|
|
}
|
|
api.saveOrUpdateHosRecordCDSS(params).then(res => {
|
|
api.saveOrUpdateHosRecordCDSS(params).then(res => {
|
|
- if (res.data.code === '0') {
|
|
|
|
|
|
+ if (res.data.code === "0") {
|
|
this.$message({
|
|
this.$message({
|
|
showClose: true,
|
|
showClose: true,
|
|
- message: '保存成功',
|
|
|
|
- type: 'success',
|
|
|
|
|
|
+ message: "保存成功",
|
|
|
|
+ type: "success",
|
|
duration: 1000
|
|
duration: 1000
|
|
});
|
|
});
|
|
this.isSaveSuccess = true; // 保存成功,可正常退出
|
|
this.isSaveSuccess = true; // 保存成功,可正常退出
|
|
this.$router.push({
|
|
this.$router.push({
|
|
- name: 'HospitalCDSS',
|
|
|
|
|
|
+ name: "HospitalCDSS",
|
|
params: Object.assign({}, this.$route.params, {
|
|
params: Object.assign({}, this.$route.params, {
|
|
currentPage: 1
|
|
currentPage: 1
|
|
})
|
|
})
|
|
});
|
|
});
|
|
- } else if (res.data.code === '20020009') {
|
|
|
|
|
|
+ } else if (res.data.code === "20020009") {
|
|
const data = res.data.data;
|
|
const data = res.data.data;
|
|
this.dialogVisible = true;
|
|
this.dialogVisible = true;
|
|
let errorOtherList = [];
|
|
let errorOtherList = [];
|
|
@@ -277,7 +292,7 @@ export default {
|
|
this.$message({
|
|
this.$message({
|
|
showClose: true,
|
|
showClose: true,
|
|
message: res.data.msg,
|
|
message: res.data.msg,
|
|
- type: 'error',
|
|
|
|
|
|
+ type: "error",
|
|
duration: 1000
|
|
duration: 1000
|
|
});
|
|
});
|
|
}
|
|
}
|
|
@@ -300,16 +315,16 @@ export default {
|
|
},
|
|
},
|
|
add() {
|
|
add() {
|
|
this.form.hospitalRelationVOList.push({
|
|
this.form.hospitalRelationVOList.push({
|
|
- name: '',
|
|
|
|
- code: '',
|
|
|
|
|
|
+ name: "",
|
|
|
|
+ code: "",
|
|
errorOther: false,
|
|
errorOther: false,
|
|
errorCurrent: false
|
|
errorCurrent: false
|
|
});
|
|
});
|
|
},
|
|
},
|
|
addIndex(i) {
|
|
addIndex(i) {
|
|
this.form.hospitalRelationVOList.splice(i + 1, 0, {
|
|
this.form.hospitalRelationVOList.splice(i + 1, 0, {
|
|
- name: '',
|
|
|
|
- code: '',
|
|
|
|
|
|
+ name: "",
|
|
|
|
+ code: "",
|
|
errorOther: false,
|
|
errorOther: false,
|
|
errorCurrent: false
|
|
errorCurrent: false
|
|
});
|
|
});
|
|
@@ -454,12 +469,25 @@ export default {
|
|
justify-content: center;
|
|
justify-content: center;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+.add-border {
|
|
|
|
+ border: 1px #48c5d7 dashed;
|
|
|
|
+ width: 96%;
|
|
|
|
+ text-align: center;
|
|
|
|
+ line-height: 30px;
|
|
|
|
+ cursor: pointer;
|
|
|
|
+ img {
|
|
|
|
+ vertical-align: middle;
|
|
|
|
+ }
|
|
|
|
+}
|
|
.add {
|
|
.add {
|
|
width: 100%;
|
|
width: 100%;
|
|
height: 80px;
|
|
height: 80px;
|
|
display: flex;
|
|
display: flex;
|
|
justify-content: center;
|
|
justify-content: center;
|
|
align-items: center;
|
|
align-items: center;
|
|
|
|
+ border: 1px solid #ebeef5;
|
|
|
|
+ border-top: none;
|
|
|
|
+ box-sizing: border-box;
|
|
}
|
|
}
|
|
.diag-center {
|
|
.diag-center {
|
|
text-align: center;
|
|
text-align: center;
|