提交 e8f8f7ad 编写于 作者: Yuanzhao.dai's avatar Yuanzhao.dai

Merge branch 'dev-followUp-20190312' of...

Merge branch 'dev-followUp-20190312' of http://192.168.110.53/com.pica.cloud.education.frontend/pica.cloud.web-education-admin into dev-followUp-20190312
<template>
<div class="selected-dialog">
<el-dialog
title="已选居民"
:visible.sync="showSelectedDialog"
v-if="isShowSelectedDialog"
:before-close="clickClose"
:close-on-click-modal="false"
:close-on-press-escape="false"
center :lock-scroll="false">
<div class="selected-dialog-content">
<div class="title-div">
<el-button type="primary" @click="continueAdd">继续添加</el-button>
</div>
<el-table
:data="hasSelectedList"
center
style="width: 100%;margin-top: 20px;">
<el-table-column
prop="name"
label="姓名"
align="center">
</el-table-column>
<el-table-column
prop="age"
label="年龄"
align="center">
</el-table-column>
<el-table-column
prop="idCardNum"
label="身份证号"
align="center"
min-width="220">
</el-table-column>
<el-table-column
prop="mobilePhone"
label="手机"
align="center"
min-width="120">
</el-table-column>
<el-table-column
prop="labelId"
label="分组"
align="center"
min-width="120">
</el-table-column>
</el-table>
<el-row type="flex" justify="end" class="margin-top20">
<el-pagination
background
v-if="hasSelectedList.length"
@size-change="handleSizeChangePre"
@current-change="handleCurrentChangePre"
layout="total, sizes, prev, pager, next, jumper"
:current-page="paginationSet.pageNum"
:page-sizes="[10, 20, 50, 100]"
:page-size="paginationSet.pageSize"
:total="paginationSet.total">
</el-pagination>
</el-row>
</div>
</el-dialog>
</div>
</template>
<script>
export default {
components: {},
name: "select-patient",
data() {
return {
showSelectedDialog: true,
paginationSet: {
pageNum: 1,
pageSize: 10,
total: 0
},
}
},
props: {
isShowSelectedDialog: { //是否显示model
type: Boolean,
default: function() {
return false;
}
},
hasSelectedList: {
type: Array,
default: function() {
return []
}
}
},
mounted() {
// if(this.planId) {
//
// }
},
methods: {
clickClose() {
this.$emit('closeSelectedDialog',false)
},
continueAdd() {
this.$emit('continueAdd', false)
},
handleSizeChangePre() {},
handleCurrentChangePre() {},
}
}
</script>
<style scoped>
</style>
<style scoped lang="scss">
.margin-top20{
margin-top: 20px;
}
.title-div{
display: flex;
justify-content: flex-end;
}
.selected-dialog-content{
margin-top: -15px;
}
</style>
<template>
<div class="follow-time">
<el-dialog
title="选择居民"
:visible.sync="showSelectPatient"
v-if="isShowSelectPatient"
:before-close="clickClose"
:close-on-click-modal="false"
:close-on-press-escape="false"
center>
<div class="finish-content">
<el-form ref="searchData" :model="searchData" :inline="true" class="select-width">
<el-form-item>
<el-select v-model="searchData.sex">
<el-option
v-for="item in sexOptions"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-select v-model="searchData.ageRange">
<el-option
v-for="item in ageOptions"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-select v-model="searchData.diseaseId">
<el-option
v-for="item in diseaseOptions"
:key="item.diseaseId"
:label="item.diseaseName"
:value="item.diseaseId">
</el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-select v-model="searchData.labelId">
<el-option
v-for="item in labelOptions"
:key="item.labelId"
:label="item.labelName"
:value="item.labelId">
</el-option>
</el-select>
</el-form-item>
<el-form-item style="width:160px;">
<el-input v-model="searchData.searchCondition" placeholder="请输入姓名或手机号">
<i slot="prefix" class="el-input__icon el-icon-search" @click="searchHandler" style="cursor: pointer"></i>
</el-input>
</el-form-item>
</el-form>
<el-table
:data="patientsData"
center
style="width: 100%;margin-top: 20px;"
@selection-change="handleSelectionChange">
<el-table-column
type="selection"
align="center">
</el-table-column>
<el-table-column
prop="name"
label="姓名"
align="center">
</el-table-column>
<el-table-column
prop="sex"
label="性别"
align="center">
</el-table-column>
<el-table-column
prop="age"
label="年龄"
align="center">
</el-table-column>
<el-table-column
prop="mobilePhone"
label="手机"
align="center">
</el-table-column>
<el-table-column
prop="diseaseId"
label="基础疾病"
align="center"
:show-overflow-tooltip="true">
</el-table-column>
<el-table-column
prop="labelId"
label="分组"
align="center"
:show-overflow-tooltip="true">
</el-table-column>
</el-table>
<el-row type="flex" justify="end" class="margin-top20">
<el-pagination
background
v-if="patientsData.length"
@size-change="handleSizeChangePre"
@current-change="handleCurrentChangePre"
layout="total, sizes, prev, pager, next, jumper"
:current-page="paginationSet.pageNum"
:page-sizes="[10, 20, 50, 100]"
:page-size="paginationSet.pageSize"
:total="paginationSet.total">
</el-pagination>
</el-row>
</div>
<div slot="footer" class="dialog-footer">
<el-button @click="clickClose" plain>取 消</el-button>
<el-button type="primary" @click="sureClick">确 定</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
export default {
components: {},
name: "select-patient",
data() {
return {
showSelectPatient: true,
selectedPatients: [],
patientsData: [{
name: '买了',
sex: '女',
age: 30,
mobilePhone: '13298073647',
diseaseId: '高血压',
labelId: '高危筛查项目-非高危'
}],
searchData: {
sex: 'all',
ageRange: '0',
diseaseId: '0',
labelId: '0',
searchCondition: ''
},
paginationSet: {
pageNum: 1,
pageSize: 10,
total: 0
},
sexOptions: [{
value: 'all',
label: '性别'
}, {
value: 'mail',
label: '男'
}, {
value: 'femail',
label: '女'
}],
ageOptions: [{
value: '0',
label: '年龄范围'
}, {
value: '1',
label: '1-6'
}, {
value: '2',
label: '7-17'
}, {
value: '3',
label: '18-28'
}],
diseaseOptions: [{
diseaseId: '0',
diseaseName: '基础疾病'
}, {
diseaseId: '1',
diseaseName: '高血压'
}, {
diseaseId: '2',
diseaseName: '糖尿病'
}, {
diseaseId: '3',
diseaseName: '高血脂'
}],
labelOptions: [{
labelId: '0',
labelName: '分组'
}, {
labelId: '1',
labelName: '高危筛查项目-非高危'
}, {
labelId: '2',
labelName: '高危筛查项目-高危组'
}, {
labelId: '3',
labelName: '公卫项目'
}],
}
},
props: {
isShowSelectPatient: { //是否显示model
type: Boolean,
default: function() {
return false;
}
},
// nodeTimeList: {
// type: Array,
// default: function() {
// return []
// }
// }
},
mounted() {
// if(this.planId) {
//
// }
},
methods: {
clickClose() {
this.$emit('closeSelectPatient',false)
},
searchHandler() {
console.log('搜索')
},
handleSelectionChange(val) {
console.log('选中居民',val)
this.selectedPatients = val;
},
handleSizeChangePre() {},
handleCurrentChangePre() {},
sureClick() {
this.$emit('sureSelectPatient',false,this.selectedPatients)
},
}
}
</script>
<style scoped lang="scss">
.select-width{
.el-form-item{
width: 130px;
}
}
.margin-top20{
margin-top: 20px;
}
</style>
...@@ -17,27 +17,37 @@ ...@@ -17,27 +17,37 @@
<i class="el-icon-arrow-right" style="color: #C0C4CC"></i> <i class="el-icon-arrow-right" style="color: #C0C4CC"></i>
<span style="color: #606266">随访时间节点</span> <span style="color: #606266">随访时间节点</span>
</div> </div>
<div class="plan-btns-group"> <div class="plan-btns-group" v-if="activeTab === 'first'">
<el-button class="button-white" plain>取 消</el-button> <el-button class="button-white" plain >取 消</el-button>
<el-button type="primary">下一步</el-button> <el-button type="primary">下一步</el-button>
</div> </div>
<div class="plan-btns-group" v-if="activeTab === 'second'">
<el-button class="button-white" plain>上一步</el-button>
<el-button type="primary">保 存</el-button>
</div>
</div> </div>
<div class="edit-plan-content"> <div class="edit-plan-content" v-if="activeTab === 'first'">
<el-form ref="baseInfo" :model="baseInfo" :rules="rules" label-suffix=":" label-width="140px"> <el-form ref="baseInfo" :model="baseInfo" :rules="rules" label-suffix=":" label-width="140px">
<el-form-item label="随访计划名称" prop="name"> <el-form-item label="随访计划名称" prop="name">
<el-input v-model="baseInfo.name" maxlength="20" style="width: 30%" clearable></el-input> <el-input v-model="baseInfo.name" maxlength="20" style="width: 30%" clearable></el-input>
</el-form-item> </el-form-item>
<el-form-item label="随访居民" required> <el-form-item label="随访居民" required>
<div class="select-patients"> <div class="select-patients">
<el-button plain icon="el-icon-plus">选择居民</el-button><br> <el-button plain icon="el-icon-plus" @click="selectPatientHandler">{{baseInfo.hasSelectedNum ? '继续添加' : '选择居民'}}</el-button><br>
<el-button type="text" class="mt10">已选300<i class="el-icon-arrow-right"></i></el-button> <el-button type="text" class="mt10" @click="seeSelectedHandler" v-if="baseInfo.hasSelectedNum">已选{{baseInfo.hasSelectedNum}}<i class="el-icon-arrow-right"></i></el-button>
</div> </div>
</el-form-item> </el-form-item>
<el-form-item label="随访模板" prop="followupTemplate"> <el-form-item label="随访模板" prop="followupTemplate">
<el-select v-model="baseInfo.followupTemplate"> <el-select
<option>随访模板一</option> v-model="baseInfo.followupTemplate"
<option>随访模板二</option> placeholder="请选择随访模板"
<option>随访模板三</option> clearable>
<el-option
v-for="item in templateOptions"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="随访开始时间" prop="startTime"> <el-form-item label="随访开始时间" prop="startTime">
...@@ -52,30 +62,37 @@ ...@@ -52,30 +62,37 @@
<el-form-item label="备注"> <el-form-item label="备注">
<el-select <el-select
v-model="baseInfo.followupKind" v-model="baseInfo.followupKind"
placeholder="请选择随访种类"> placeholder="请选择随访种类"
<option>随访模板一</option> clearable>
<option>随访模板二</option> <el-option
<option>随访模板三</option> v-for="item in kindOptions"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-form> </el-form>
</div> </div>
</div> </div>
<select-patient :isShowSelectPatient="isShowSelectPatient" @closeSelectPatient="closeSelectPatient" @sureSelectPatient="sureSelectPatient(arguments)"></select-patient>
<has-selected-patient :isShowSelectedDialog="isShowSelectedDialog" :hasSelectedList="hasSelectedList" @closeSelectedDialog="closeSelectedDialog" @continueAdd="continueAdd"></has-selected-patient>
</div> </div>
</template> </template>
<script> <script>
import BreadCrumb from '@/components/breadcrumb' import BreadCrumb from '@/components/breadcrumb'
import ElButton from "element-ui/packages/button/src/button"; //选择居民dialog
//结束随访dialog import SelectPatient from '@/views/followup/plan-manage/dialog/select-patient';
// import FinishFollowup from '@/views/followup/plan-manage/dialog/finish-followup'; import HasSelectedPatient from '@/views/followup/plan-manage/dialog/has-selected-patient';
// import { mapState, mapActions } from 'vuex' // import { mapState, mapActions } from 'vuex'
export default { export default {
name: "addNewPlan", name: "addNewPlan",
components: { components: {
ElButton,
BreadCrumb, BreadCrumb,
SelectPatient,
HasSelectedPatient,
}, },
data() { data() {
return { return {
...@@ -85,12 +102,39 @@ ...@@ -85,12 +102,39 @@
curmbThird: '新建随访计划', curmbThird: '新建随访计划',
jumPathThird: '/followUp/plan-manage', jumPathThird: '/followUp/plan-manage',
activeTab: 'first',
baseInfo: { baseInfo: {
name: '', name: '',
followupTemplate: '', followupTemplate: '',
startTime: '', startTime: '',
followupKind: '' followupKind: '',
hasSelectedNum: 0,
}, },
isShowSelectPatient: false,
isShowSelectedDialog: false,
hasSelectedList: [],
templateOptions: [
{
value: '0',
label: '随访模板一'
}, {
value: '1',
label: '随访模板二'
}, {
value: '2',
label: '随访模板三'
}
],
kindOptions: [
{
value: '0',
label: '上门随访'
}, {
value: '1',
label: '术后随访'
}
],
rules: { rules: {
name: [{ required: true, message: '请输入随访计划名称', trigger: 'blur' }], name: [{ required: true, message: '请输入随访计划名称', trigger: 'blur' }],
followupTemplate: [{ required: true, message: '请选择随访模板', trigger: 'change' }], followupTemplate: [{ required: true, message: '请选择随访模板', trigger: 'change' }],
...@@ -115,6 +159,28 @@ ...@@ -115,6 +159,28 @@
}, },
methods: { methods: {
// ...mapActions('planManage', ['getResidentList', 'getGroupList']), // ...mapActions('planManage', ['getResidentList', 'getGroupList']),
selectPatientHandler() {
this.isShowSelectPatient = true;
},
closeSelectPatient(val) {
this.isShowSelectPatient = val;
},
seeSelectedHandler() {
this.isShowSelectedDialog = true;
},
closeSelectedDialog(val) {
this.isShowSelectedDialog = val;
},
sureSelectPatient() {
let getArguments = arguments[0];
this.isShowSelectPatient = getArguments[0];
this.hasSelectedList = getArguments[1];
this.baseInfo.hasSelectedNum = getArguments[1].length;
},
continueAdd(val) {
this.isShowSelectedDialog = val;
this.isShowSelectPatient = true;
},
}, },
watch: { watch: {
} }
......
...@@ -52,7 +52,7 @@ ...@@ -52,7 +52,7 @@
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button @click="closeChangeReserve1">取 消</el-button> <el-button @click="closeChangeReserve1" plain>取 消</el-button>
<el-button type="primary" @click="closeChangeReserve('reservationForm')">确 定</el-button> <el-button type="primary" @click="closeChangeReserve('reservationForm')">确 定</el-button>
</div> </div>
</el-dialog> </el-dialog>
......
...@@ -59,7 +59,7 @@ ...@@ -59,7 +59,7 @@
<p>提示:微信推送不消耗额度,建议您与居民绑定微信,关注云鹊健康微信公众号</p> <p>提示:微信推送不消耗额度,建议您与居民绑定微信,关注云鹊健康微信公众号</p>
</div> </div>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button @click="closeSendReserve1">取消发送</el-button> <el-button @click="closeSendReserve1" plain>取消发送</el-button>
<el-button type="primary" @click="closeSendReserve('reservationForm')">立即发送</el-button> <el-button type="primary" @click="closeSendReserve('reservationForm')">立即发送</el-button>
</div> </div>
</el-dialog> </el-dialog>
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册