提交 c4d57eb4 编写于 作者: yi.li's avatar yi.li

居民单个录入部分添加

上级 6dcfe169
...@@ -228,6 +228,14 @@ ...@@ -228,6 +228,14 @@
isShowSelectPatient: Boolean, //是否显示model, isShowSelectPatient: Boolean, //是否显示model,
patientIdList: Array,// 确定已经选过的居民 patientIdList: Array,// 确定已经选过的居民
oldPatientIdList: Array,// 确定已经选过的居民 oldPatientIdList: Array,// 确定已经选过的居民
selectPatientType: Number, //获取居民列表所需字段,随访是1,分组是2,患教是3
fuPlanIdList: {
required: false,
type: Array,
default: function () {
return [];
}
}, //获取居民列表所需字段,若是随访,则需要传值
}, },
watch: { watch: {
isShowSelectPatient(val){ isShowSelectPatient(val){
...@@ -284,8 +292,8 @@ ...@@ -284,8 +292,8 @@
sex: this.searchData.sex, sex: this.searchData.sex,
searchCondition:this.searchData.searchCondition, searchCondition:this.searchData.searchCondition,
srvPackageId:this.srvPackageId, srvPackageId:this.srvPackageId,
addType: 1, addType: this.selectPatientType, //随访是1,分组是2,患教是3
fuPlanIdList: [], fuPlanIdList: this.fuPlanIdList,
} }
getPatientInfoList(data).then(res=>{ getPatientInfoList(data).then(res=>{
if(res.data.patientList){ if(res.data.patientList){
......
...@@ -139,6 +139,7 @@ ...@@ -139,6 +139,7 @@
:isShowSelectPatient="isShowSelectPatient" :isShowSelectPatient="isShowSelectPatient"
:patientIdList="patientIdList" :patientIdList="patientIdList"
@closeSelectPatient="closeSelectPatient" @closeSelectPatient="closeSelectPatient"
:selectPatientType="selectPatientType"
@sureSelectPatient="sureSelectPatient(arguments)" @sureSelectPatient="sureSelectPatient(arguments)"
/> />
</div> </div>
...@@ -182,6 +183,7 @@ ...@@ -182,6 +183,7 @@
newLabelName: '', // 修改后的分组名 newLabelName: '', // 修改后的分组名
}, },
multipleSelection: [], multipleSelection: [],
selectPatientType: 2, //选择居民时需要的type类型
} }
}, },
components: { components: {
......
...@@ -102,7 +102,7 @@ ...@@ -102,7 +102,7 @@
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="年龄" prop="age"> <el-form-item label="年龄" prop="age">
<span>{{(patientInfoForm.age || patientInfoForm.age == 0) ? `${patientInfoForm.age}岁` : '-'}}</span> <span>{{(patientInfoForm.age || patientInfoForm.age == 0 ) ? `${patientInfoForm.age}岁` : '-'}}</span>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
...@@ -246,6 +246,32 @@ ...@@ -246,6 +246,32 @@
getCityList, getCityList,
getCountyList, getCountyList,
getTownList } from '@/utils/patients/patientsapi'; getTownList } from '@/utils/patients/patientsapi';
const initForm = {
nickname: '',
mobilePhone: '',
diseases: [],
patientDiseases: [],
customLabels: [],
idNo: '',
birthTime: '',
age: '',
sex: null,
permanentResidence: '',
nationality: '',
socialCard: '',
fileLocator: '',
isWechatBind: null,
isRemind: null,
wechatNickname: '',
remark: '',
patientAddress: '',
address: '',
workplace: '',
provinceId: null,
cityId: null,
countyId: null,
townId: null,
};
export default { export default {
name: "basicInfo", name: "basicInfo",
components: {}, components: {},
...@@ -372,32 +398,7 @@ ...@@ -372,32 +398,7 @@
this.addressList = []; this.addressList = [];
} }
}else { // 新增 }else { // 新增
this.patientInfoForm = { this.patientInfoForm = JSON.stringify(JSON.parse(initForm));
nickname: '',
mobilePhone: '',
diseases: [],
patientDiseases: [],
customLabels: [],
idNo: '',
birthTime: '',
age: '',
sex: null,
permanentResidence: '',
nationality: '',
socialCard: '',
fileLocator: '',
isWechatBind: null,
isRemind: null,
wechatNickname: '',
remark: '',
patientAddress: '',
address: '',
workplace: '',
provinceId: null,
cityId: null,
countyId: null,
townId: null,
}
} }
}, },
checkForm(val){ checkForm(val){
...@@ -527,6 +528,9 @@ ...@@ -527,6 +528,9 @@
}) })
this.patientInfoForm.patientAddress = `${this.patientInfoForm.provinceName}${this.patientInfoForm.cityName}${this.patientInfoForm.countyName}${this.patientInfoForm.townName}` this.patientInfoForm.patientAddress = `${this.patientInfoForm.provinceName}${this.patientInfoForm.cityName}${this.patientInfoForm.countyName}${this.patientInfoForm.townName}`
} }
if(!this.patientInfoForm.idNo) {
this.patientInfoForm.idNo = null;
}
if (valid) { if (valid) {
// console.log('提交表单',this.patientInfoForm); // console.log('提交表单',this.patientInfoForm);
this.$emit('addListenSave',{ this.$emit('addListenSave',{
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<div class="f-main-content screenSet"> <div class="f-main-content screenSet">
<div> <div>
<div class="right-btn-group" v-if="activeName == 'first'"> <div class="right-btn-group" v-if="activeName == 'first'">
<el-button plain size="small" @click="deletePatient">删除</el-button> <el-button plain size="small" @click="deleteCurrentPatient">删除</el-button>
<el-button type="primary" size="small" @click="editPatient">编辑</el-button> <el-button type="primary" size="small" @click="editPatient">编辑</el-button>
</div> </div>
<el-tabs v-model="activeName" @tab-click="tabChangeHandler"> <el-tabs v-model="activeName" @tab-click="tabChangeHandler">
...@@ -259,7 +259,7 @@ ...@@ -259,7 +259,7 @@
}) })
}, },
tabChangeHandler(tab) {}, tabChangeHandler(tab) {},
deletePatient() { deleteCurrentPatient() {
// 把写的提示信息需要换行的地方分成数组 confirmText // 把写的提示信息需要换行的地方分成数组 confirmText
const confirmText = ['您确定要删除此居民吗?', '删除后,您将无法对该居民发送患教和进行随访,重新添加该居民依旧可查看历史发送记录及随访记录']; const confirmText = ['您确定要删除此居民吗?', '删除后,您将无法对该居民发送患教和进行随访,重新添加该居民依旧可查看历史发送记录及随访记录'];
const newDatas = []; const newDatas = [];
......
...@@ -5,8 +5,15 @@ ...@@ -5,8 +5,15 @@
<el-tabs v-model="activeName2" @tab-click="handleTabClick" class="tab-list"> <el-tabs v-model="activeName2" @tab-click="handleTabClick" class="tab-list">
<el-tab-pane label="单个录入" name="first" class="single-input"> <el-tab-pane label="单个录入" name="first" class="single-input">
<el-row class="save-and-add"> <el-row class="save-and-add">
<el-button type="primary">保存并新增</el-button> <el-button type="primary" @click="saveEdit">保存并新增</el-button>
</el-row> </el-row>
<edit-information
ref="newForm"
:patientInfoObj="patientInfo"
:checkForm="checkForm"
@addListenSave="addListenSave"
:patientId="patientId">
</edit-information>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="二维码录入" name="second"> <el-tab-pane label="二维码录入" name="second">
<div class="qr-code-wrap"> <div class="qr-code-wrap">
...@@ -27,10 +34,10 @@ ...@@ -27,10 +34,10 @@
<div class="pic"> <div class="pic">
<div class="img" style="width: 200px; height: 200px;"></div> <div class="img" style="width: 200px; height: 200px;"></div>
<el-button icon="el-icon-download" class="qr-download-btn">下载二维码</el-button> <el-button icon="el-icon-download" class="qr-download-btn">下载二维码</el-button>
</div> </div>
<p class="time-limit">有效期:2019.5.1-2019.5.30 </p> <p class="time-limit">有效期:2019.5.1-2019.5.30 </p>
<el-button icon="el-icon-refresh" class="refresh-btn" size="small">刷新有效期</el-button> <el-button icon="el-icon-refresh" class="refresh-btn" size="small">刷新有效期</el-button>
</div> </div>
</div> </div>
<div class="border-space"></div> <div class="border-space"></div>
<div class="increased-steps-wrap"> <div class="increased-steps-wrap">
...@@ -176,15 +183,17 @@ ...@@ -176,15 +183,17 @@
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import BreadCrumb from "@/components/breadcrumb.vue"; import BreadCrumb from "@/components/breadcrumb.vue";
import EditInformation from '../mypatients-manage/components/edit-information'
import * as commonUtil from "@/utils/utils"; import * as commonUtil from "@/utils/utils";
import { import {
getUploadHistory getUploadHistory,
savePatientInfo
} from "@/utils/patients/patientsapi"; } from "@/utils/patients/patientsapi";
import { getSaasDomain } from '@/utils/index'; import { getSaasDomain } from '@/utils/index';
...@@ -194,7 +203,10 @@ import { getSaasDomain } from '@/utils/index'; ...@@ -194,7 +203,10 @@ import { getSaasDomain } from '@/utils/index';
return { return {
curmbFirst: "居民管理", curmbFirst: "居民管理",
curmbSecond: "新增居民", curmbSecond: "新增居民",
activeName2: 'second', activeName2: 'first',
patientInfo: {},
checkForm: false,
patientId: '',
searchData: { searchData: {
pageNo: 1, // 第几页 pageNo: 1, // 第几页
pageSize: 10, // 每页条数 pageSize: 10, // 每页条数
...@@ -212,7 +224,7 @@ import { getSaasDomain } from '@/utils/index'; ...@@ -212,7 +224,7 @@ import { getSaasDomain } from '@/utils/index';
}, },
components: { components: {
BreadCrumb, BreadCrumb,
EditInformation,
}, },
created() { created() {
this.goToGetUploadHistory(); this.goToGetUploadHistory();
...@@ -266,13 +278,13 @@ import { getSaasDomain } from '@/utils/index'; ...@@ -266,13 +278,13 @@ import { getSaasDomain } from '@/utils/index';
this.$message({ this.$message({
message: '上传文件只能是 xls、xlsx格式!', message: '上传文件只能是 xls、xlsx格式!',
type: 'warning' type: 'warning'
}); });
fileList.splice(0, 1); fileList.splice(0, 1);
return false; return false;
} }
if (fileList.length > 1) { if (fileList.length > 1) {
fileList.splice(0, 1); fileList.splice(0, 1);
} }
this.files = [file]; this.files = [file];
...@@ -295,12 +307,36 @@ import { getSaasDomain } from '@/utils/index'; ...@@ -295,12 +307,36 @@ import { getSaasDomain } from '@/utils/index';
const codes = ['000000', '400002', '400004']; const codes = ['000000', '400002', '400004'];
if (codes.indexOf(code) > -1) { if (codes.indexOf(code) > -1) {
this.error = response.data; this.error = response.data;
} else { } else {
this.error = response.message; this.error = response.message;
} }
}, },
} saveEdit() {
this.checkForm = true;
},
addListenSave(val) {
this.checkForm = false;
if(val.status) {
// this.patientInfo = val.patientInfoForm
console.log('填写内容',val.patientInfoForm);
savePatientInfo(val.patientInfoForm).then(data => {
if(data.code == '000000'){
this.$message.success('新增成功')
setTimeout(() => {
this.$refs.newForm.$refs.patientInfoForm.resetFields()
// this.$router.go(0);//体验不好
},500)
}else {
this.$message.error(data.message);
}
})
// 调用保存接口
}else {
this.$message.error('请正确填写信息');
}
},
}
} }
</script> </script>
...@@ -317,7 +353,7 @@ import { getSaasDomain } from '@/utils/index'; ...@@ -317,7 +353,7 @@ import { getSaasDomain } from '@/utils/index';
margin: 0; margin: 0;
padding: 0; padding: 0;
.septal-line{ .septal-line{
width: 100%; width: 100%;
height: 1px; height: 1px;
background: #EBEEF5; background: #EBEEF5;
} }
...@@ -329,6 +365,7 @@ import { getSaasDomain } from '@/utils/index'; ...@@ -329,6 +365,7 @@ import { getSaasDomain } from '@/utils/index';
border-bottom: 1px solid #efefef; border-bottom: 1px solid #efefef;
} }
.single-input{ .single-input{
background-color: #ffffff!important;
.save-and-add{ .save-and-add{
text-align: right; text-align: right;
} }
...@@ -379,7 +416,7 @@ import { getSaasDomain } from '@/utils/index'; ...@@ -379,7 +416,7 @@ import { getSaasDomain } from '@/utils/index';
width: 100%; width: 100%;
background: #fff; background: #fff;
.guide-list{ .guide-list{
width: 100%; width: 100%;
height: 237px; height: 237px;
margin-top: 15px; margin-top: 15px;
.first{ .first{
...@@ -390,7 +427,7 @@ import { getSaasDomain } from '@/utils/index'; ...@@ -390,7 +427,7 @@ import { getSaasDomain } from '@/utils/index';
.procedure{ .procedure{
width: 100%; height: 20px; width: 100%; height: 20px;
.icon{ .icon{
width: 20px; width: 20px;
height: 20px; height: 20px;
display: inline-block; display: inline-block;
background: #449284; background: #449284;
...@@ -406,7 +443,7 @@ import { getSaasDomain } from '@/utils/index'; ...@@ -406,7 +443,7 @@ import { getSaasDomain } from '@/utils/index';
} }
.border{ .border{
display: inline-block; display: inline-block;
width: 200px; width: 200px;
// width: 70%; // width: 70%;
height: 0px; height: 0px;
border-bottom: 1px solid #449284; border-bottom: 1px solid #449284;
...@@ -422,12 +459,12 @@ import { getSaasDomain } from '@/utils/index'; ...@@ -422,12 +459,12 @@ import { getSaasDomain } from '@/utils/index';
.under-info{ .under-info{
padding-left: 25px; padding-left: 25px;
.step-tips{ .step-tips{
width: 100%; width: 100%;
font-size: 12px; font-size: 12px;
color: #595959; color: #595959;
margin: 8px 0 20px; margin: 8px 0 20px;
} }
} }
} }
.second{ .second{
...@@ -460,7 +497,7 @@ import { getSaasDomain } from '@/utils/index'; ...@@ -460,7 +497,7 @@ import { getSaasDomain } from '@/utils/index';
} }
} }
} }
} }
.third{ .third{
width: 300px; width: 300px;
...@@ -478,16 +515,16 @@ import { getSaasDomain } from '@/utils/index'; ...@@ -478,16 +515,16 @@ import { getSaasDomain } from '@/utils/index';
} }
} }
.upload-table{ .upload-table{
} }
.el-table__body-wrapper{ .el-table__body-wrapper{
&::-webkit-scrollbar &::-webkit-scrollbar
{ {
width: 5px; width: 5px;
height: 5px; height: 5px;
background-color: #fff; background-color: #fff;
} }
&::-webkit-scrollbar-thumb &::-webkit-scrollbar-thumb
{ {
border-radius: 10px; border-radius: 10px;
...@@ -501,7 +538,7 @@ import { getSaasDomain } from '@/utils/index'; ...@@ -501,7 +538,7 @@ import { getSaasDomain } from '@/utils/index';
background: #fff; background: #fff;
.qr-group{ .qr-group{
width: 100%; height:auto; width: 100%; height:auto;
overflow: hidden; overflow: hidden;
margin: 30px 0 40px; margin: 30px 0 40px;
.label-name{ .label-name{
display: inline-block; display: inline-block;
...@@ -530,7 +567,7 @@ import { getSaasDomain } from '@/utils/index'; ...@@ -530,7 +567,7 @@ import { getSaasDomain } from '@/utils/index';
.pic{ .pic{
background:rgba(240,242,245,1); background:rgba(240,242,245,1);
width: 200px; height: auto; width: 200px; height: auto;
border: 0; border: 0;
.qr-download-btn{ .qr-download-btn{
color: #fff; color: #fff;
background: #449284; background: #449284;
...@@ -539,7 +576,7 @@ import { getSaasDomain } from '@/utils/index'; ...@@ -539,7 +576,7 @@ import { getSaasDomain } from '@/utils/index';
} }
} }
.time-limit{ .time-limit{
width: 100%; width: 100%;
text-align: center; text-align: center;
color: #8C8C8C; color: #8C8C8C;
font-size: 12px; font-size: 12px;
...@@ -550,7 +587,7 @@ import { getSaasDomain } from '@/utils/index'; ...@@ -550,7 +587,7 @@ import { getSaasDomain } from '@/utils/index';
background:rgba(236,244,242,1); background:rgba(236,244,242,1);
border:1px solid rgba(150,195,193,1); border:1px solid rgba(150,195,193,1);
} }
} }
} }
.border-space{ .border-space{
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册