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

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

Merge branch 'dev-followUp-20190312' of 192.168.110.53:com.pica.cloud.education.frontend/pica.cloud.web-education-admin into dev-followUp-20190312
......@@ -89,9 +89,7 @@ export default {
});
},
getNodeTimeContent(context, payload) {
getNodeTimeContent({}, {
urlSuffix:payload
}).then(({data}) => {
getNodeTimeContent(payload).then(({data}) => {
context.commit('GET_NODE_CONTENT', data);
});
},
......
......@@ -7,9 +7,9 @@ export default {
namespaced: true,
state: {
reservationList: { //居民列表
pageNum: 1, //当前页码
pageNo: 1, //当前页码
pageSize: 10, //每页数据大小
total: null, //总数
count: null, //总数
},
checkRevervationData: {},//发送预约校验
constantsData: {},//获取常量
......@@ -17,7 +17,7 @@ export default {
},
mutations: {
GET_RESERVATION_LIST(state, payload) {
state.reservationList = payload
state.reservationList = payload.data.enteringDtos
},
GET_CHECK_RESERVATION(state, payload) {
state.checkRevervationData = payload
......@@ -31,10 +31,10 @@ export default {
},
actions: {
getReservationList(context, payload) {
const { pageSize, pageNum } = context.state.reservationList;
const { pageNo, pageSize } = context.state.reservationList;
getReservationList({
pageNo,
pageSize,
pageNum,
...payload
}).then(({data}) => {
context.commit('GET_RESERVATION_LIST', data);
......
......@@ -60,7 +60,7 @@ export const getPlanDetail = (planId) => {
export const getNodeTimeList = (planId) => {
return fetch({
headers,
url: getFollowUpSC(`/followup/plans/times/line/${planId}`),
url: getFollowUpSC(`/followup/plan/${planId}/time`),
method: 'get',
description: '获取随访时间节点列表',
})
......@@ -111,12 +111,12 @@ export const changePlan = (params) => {
};
/*预约管理*/
export const getReservationList = (params) => {
export const getReservationList = (data) => {
return fetch({
headers,
url: getFollowUpSC(`/followup/appointmentPatient/`),
method: 'get',
params: params,
url: getFollowUpSC(`/followup/appoint/appointed/list`),
method: 'post',
data: data,
description: '获取预约列表',
})
};
......
......@@ -9,7 +9,7 @@
center>
<el-form :model="planChangeData" label-width="110px">
<el-form-item label="分组:">
<el-select v-model="planChangeData.group" >
<el-select v-model="planChangeData.group" size="small">
<el-option
v-for="item in groupList"
:key="item.labelId"
......@@ -19,7 +19,7 @@
</el-select>
</el-form-item>
<el-form-item label="随访计划:">
<el-select v-model="planChangeData.planId" >
<el-select v-model="planChangeData.planId" size="small">
<el-option
v-for="item in planOption"
:key="item.id"
......@@ -29,7 +29,7 @@
</el-select>
</el-form-item>
<el-form-item label="随访开始时间:">
<el-select v-model="planChangeData.startTime">
<el-select v-model="planChangeData.startTime" size="small">
<el-option
v-for="item in nodeTimeList"
:key="item.id"
......@@ -40,8 +40,8 @@
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button class="button-green" @click="clickClose" type="primary">取 消</el-button>
<el-button class="button-white" @click="changePlan" plain>确 定</el-button>
<el-button class="button-green" @click="clickClose" size="small" type="primary">取 消</el-button>
<el-button class="button-white" @click="changePlan" size="small" plain>确 定</el-button>
</span>
</el-dialog>
</div>
......
......@@ -11,7 +11,7 @@
<el-form
:model="finishData"
:rules="rules"
label-width="85px">
label-width="100px">
<el-form-item label="居民:">
{{finishData.patientName}}
</el-form-item>
......@@ -27,8 +27,8 @@
</el-form>
</div>
<span slot="footer" class="dialog-footer">
<el-button class="button-green" @click="clickClose" type="primary">取 消</el-button>
<el-button class="button-white" @click="clickClose" plain>确 定</el-button>
<el-button class="button-green" @click="clickClose" size="small" type="primary">取 消</el-button>
<el-button class="button-white" @click="clickClose" size="small" plain>确 定</el-button>
</span>
</el-dialog>
</div>
......
......@@ -10,7 +10,7 @@
<div class="header">
<div class="title"><p>基本信息</p></div>
<div class="h-btn">
<el-button class="button-white" plain @click="changePlan">修改</el-button>
<el-button class="button-white" plain @click="changePlan" size="small">修改</el-button>
</div>
</div>
<div class="base-info" >
......@@ -47,7 +47,7 @@
</div>
<div class="time-nodes">
<p class="title">随访时间节点</p>
<el-radio-group v-model="timeNodes">
<el-radio-group v-model="timeNodes" size="small">
<el-radio-button :key="item.id" v-for="item in planDetail.fPlanTimeDtoList" :label="item.id">{{item.timeStr}}</el-radio-button>
</el-radio-group>
<div class="followup-contents">
......@@ -110,7 +110,7 @@
},
mounted() {
this.getPlanDetail(this.$route.query.planId); //获取居民详情
this.getPlanDetail(this.$route.query.planId); //获取计划详情
this.getNodeTimeList(this.$route.query.planId); // 获取随访时间列表
},
computed: {
......@@ -127,10 +127,10 @@
this.showFollowTime = true
},
goToResidentList() {
this.$router.push({path: '/followup/plan-manage/resident-list', query: {planId:'1'}})
this.$router.push({path: '/followup/plan-manage/resident-list', query: {planId: this.$route.query.planId}})
},
changePlan() {
this.$router.push({path: '/followup/plan-manage/plan-modify', query: {planId: this.$route.query.planId}})
},
closeFollowTime(isShow) {
this.showFollowTime = isShow
......
......@@ -128,13 +128,13 @@
this.$router.push({path: '/followup/plan-manage/new-plan'})
},
visitDetail(row){
this.$router.push({path: '/followup/plan-manage/plan-detail', query: {planId:'1'}})
this.$router.push({path: '/followup/plan-manage/plan-detail', query: {planId:row.id}})
},
visitRow(row){
this.$router.push({path: '/followup/plan-manage/resident-list', query: {planId:'1'}})
this.$router.push({path: '/followup/plan-manage/resident-list', query: {planId:row.id}})
},
changeRow(row){
this.$router.push({path: '/followup/plan-manage/plan-modify', query: {planId:'1'}})
this.$router.push({path: '/followup/plan-manage/plan-modify', query: {planId:row.id}})
},
deleteRow(row){},
......
......@@ -12,41 +12,31 @@
<span>修改计划</span>
</div>
<div class="plan-btns-group">
<el-button class="button-white" plain @click="cancelEdit" >取 消</el-button>
<el-button class="button-green" type="primary" @click="cancelEdit" >保 存</el-button>
<el-button class="button-white" plain @click="cancelEdit" size="small">取 消</el-button>
<el-button class="button-green" type="primary" @click="saveModify" size="small">保 存</el-button>
</div>
</div>
<el-form ref="baseInfo" :model="modifyInfo" :rules="rules" label-suffix=":" label-width="140px">
<el-form ref="baseInfo" :model="planDetail" :rules="rules" label-suffix=":" label-width="140px">
<el-form-item label="随访计划名称" prop="name">
<el-input v-model="modifyInfo.name" maxlength="20" style="width: 30%" clearable></el-input>
<el-input v-model="planDetail.name" maxlength="20" style="width: 30%" size="small" clearable></el-input>
</el-form-item>
<el-form-item label="随访居民" required>
<div class="select-patients">
<el-button plain icon="el-icon-plus" @click="selectPatientHandler">{{modifyInfo.hasSelectedNum ? '继续添加' : '选择居民'}}</el-button><br>
<el-button type="text" class="mt10" @click="seeSelectedHandler" v-if="modifyInfo.hasSelectedNum">已选{{modifyInfo.hasSelectedNum}}<i class="el-icon-arrow-right"></i></el-button>
<el-button plain icon="el-icon-plus" size="small" @click="selectPatientHandler">{{planDetail.patientIdList ? '继续添加' : '选择居民'}}</el-button><br>
<el-button type="text" class="mt10" size="small" @click="seeSelectedHandler" v-if="planDetail.patientIdList">已选{{planDetail.patientIdList.length}}<i class="el-icon-arrow-right"></i></el-button>
</div>
</el-form-item>
<el-form-item label="随访模板" prop="followupTemplate">
<el-select
v-model="modifyInfo.followupTemplate"
placeholder="请选择随访模板"
clearable>
<el-option
v-for="item in templateOptions"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
<p class="tips">随访计划创建成功后,模板不可更换,请谨慎选择。</p>
<el-form-item label="随访模板" prop="resourceName">
{{planDetail.resourceName}}
</el-form-item>
<el-form-item label="随访开始时间" prop="startTime">
2018-01-01 <el-button class="btn-text" type="text" @click="goToFollowTime">查看全部></el-button>
<el-form-item label="随访开始时间" prop="timeStr">
{{planDetail.timeStr}} <el-button class="btn-text" type="text" @click="goToFollowTime" size="small">查看全部></el-button>
</el-form-item>
<el-form-item label="备注">
<el-select
v-model="modifyInfo.followupKind"
v-model="planDetail.remarksStatus"
placeholder="请选择随访种类"
size="small"
clearable>
<el-option
v-for="item in kindOptions"
......@@ -58,7 +48,7 @@
</el-form-item>
</el-form>
<div class="edit-plan-content">
<set-time-node></set-time-node>
<set-time-node ></set-time-node>
</div>
</div>
<select-patient
......@@ -66,6 +56,8 @@
@closeSelectPatient="closeSelectPatient"
@sureSelectPatient="sureSelectPatient(arguments)">
</select-patient>
<has-selected-patient :isShowSelectedDialog="isShowSelectedDialog" :hasSelectedList="residentList.fPlanPatientInfoDtoList" @closeSelectedDialog="closeSelectedDialog" @continueAdd="continueAdd"></has-selected-patient>
<follow-time :showThisPage="showFollowTime" :nodeTimeList="nodeTimeList" @closeFollowTime="closeFollowTime"></follow-time>
</div>
</template>
......@@ -74,6 +66,10 @@
import SelectPatient from '@/views/followup/plan-manage/dialog/select-patient';
import HasSelectedPatient from '@/views/followup/plan-manage/dialog/has-selected-patient';
import SetTimeNode from '@/views/followup/plan-manage/dialog/set-time-node';
import FollowTime from '@/views/followup/plan-manage/dialog/follow-time';
import { mapState, mapActions } from 'vuex'
export default {
name: "plan-modify",
components: {
......@@ -81,6 +77,7 @@
SelectPatient,
HasSelectedPatient,
SetTimeNode,
FollowTime
},
data() {
return {
......@@ -89,7 +86,6 @@
curmbSecond: '计划管理',
curmbThird: '修改随访计划',
jumPathThird: '/followUp/plan-manage',
modifyInfo: {},
rules: {
name: [{ required: true, message: '请输入随访计划名称', trigger: 'blur' }],
followupTemplate: [{ required: true, message: '请选择随访模板', trigger: 'change' }],
......@@ -109,45 +105,92 @@
],
kindOptions: [
{
value: '0',
value: 0,
label: '上门随访'
}, {
value: '1',
value: 1,
label: '术后随访'
}
],
isShowSelectPatient: false, //显示居民选择框
isShowSelectedDialog: false, //显示已选居民
hasSelectedList: [], //已选居民
showFollowTime: false, //是否展示全部时间
}
},
mounted() {
this.getPlanDetail(this.$route.query.planId); //获取计划详情
this.getNodeTimeList(this.$route.query.planId); // 获取随访时间列表
this.getResidentList({
planId: this.$route.query.planId
}); //已选居民
},
computed: {
...mapState('planManage', {
planDetail: state => state.planDetail,
nodeTimeList: state => state.nodeTimeList,
residentList: state => state.residentList,
})
},
methods: {
...mapActions('planManage', ['getPlanDetail', 'getNodeTimeList', 'getResidentList']),
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.modifyInfo.hasSelectedNum = getArguments[1].length;
},
continueAdd(val) {
this.isShowSelectedDialog = val;
this.isShowSelectPatient = true;
},
cancelEdit() {
this.$confirm('是否放弃本次创建,放弃后数据不能被保存', '', {
confirmButtonText: '继续创建',
this.$confirm('是否放弃本次修改?', '', {
confirmButtonText: '继续修改',
cancelButtonText: '确定放弃',
type: 'warning'
}).then(() => {
// 关闭弹层,继续创建
}).catch(() => {
// 确定放弃,跳出当前编辑页面
this.$router.push({path: '/followup/plan-manage/plan-list'})
this.$router.back(-1)
});
},
goToFollowTime() {
saveModify() {
this.$confirm('是否确认保存修改内容?', '', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
// 关闭弹层,继续创建
this.$message({
message: '修改成功!',
type: 'success'
});
this.$router.back(-1)
}).catch(() => {
// 确定放弃,跳出当前编辑页面
}
});
},
goToFollowTime() {
this.showFollowTime = true
},
closeFollowTime(isShow) {
this.showFollowTime = isShow
},
},
}
</script>
......
......@@ -10,8 +10,8 @@
<div class="header">
<div class="title"><p>基本信息</p></div>
<div class="h-btn">
<el-button class="button-white" plain @click="changePlan">计划变更</el-button>
<el-button class="button-white" plain @click="finishFollowup">结束随访</el-button>
<el-button class="button-white" plain size="small" @click="changePlan">计划变更</el-button>
<el-button class="button-white" plain size="small" @click="finishFollowup">结束随访</el-button>
</div>
</div>
<div class="base-info" v-if="residentDetail.fPlanPatientDatilDtoList">
......@@ -64,7 +64,7 @@
</div>
<div class="time-nodes">
<p class="title">随访时间节点</p>
<el-radio-group v-model="timeNodes">
<el-radio-group v-model="timeNodes" size="small">
<el-radio-button :key="item.nodeId" v-for="item in timeNodeList" :label="item.nodeId">{{item.timeNodeContent}}</el-radio-button>
</el-radio-group>
<div class="followup-contents">
......
......@@ -12,13 +12,13 @@
<div class="search-input">
<el-form :model="searchData" ref="searchData" :inline="true" :label-width="labelWidth">
<el-form-item label="姓名:" prop="patientName">
<el-input v-model="searchData.patientName" placeholder="请输入姓名" clearable></el-input>
<el-input v-model="searchData.patientName" size="small" placeholder="请输入姓名" clearable></el-input>
</el-form-item>
<el-form-item label="手机号:" prop="mobile">
<el-input v-model="searchData.mobile" placeholder="请输入手机号" clearable></el-input>
<el-input v-model="searchData.mobile" size="small" placeholder="请输入手机号" clearable></el-input>
</el-form-item>
<el-form-item label="分组:" prop="labelId">
<el-select v-model="searchData.labelId" clearable>
<el-select v-model="searchData.labelId" size="small" clearable>
<el-option
v-for="item in groupList"
:key="item.labelId"
......@@ -27,7 +27,7 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="随访开始时间:" prop="startDate" clearable>
<el-form-item label="随访开始时间:" prop="startDate" size="small" clearable>
<el-date-picker
v-model="searchData.startDate"
type="datetime"
......@@ -39,25 +39,26 @@
</el-form>
</div>
<div class="search-btn">
<el-button class="button-green" type="primary" @click="searchResidentList">查询</el-button>
<el-button class="button-white" plain @click="resetSearchData('searchData')">重置</el-button>
<el-button class="button-green" type="primary" size="small" @click="searchResidentList">查询</el-button>
<el-button class="button-white" plain size="small" @click="resetSearchData('searchData')">重置</el-button>
</div>
</div>
<div class="resident-table table-content">
<div class="btn-div">
<el-radio-group v-model="status">
<el-radio-group v-model="status" size="small">
<el-radio-button label="0">未完成({{residentList.notCount}})</el-radio-button>
<el-radio-button label="1">进行中({{residentList.handCount}})</el-radio-button>
<el-radio-button label="2">已结束({{residentList.yesCount}})</el-radio-button>
</el-radio-group>
<div class="btn-left">
<el-button class="button-green" type="primary" @click="finishFollowup('all')">结束随访</el-button>
<el-button class="button-white" plain @click="selectPatientHandler">添加居民</el-button>
<el-button class="button-green" type="primary" size="small" @click="finishFollowup('all')">结束随访</el-button>
<el-button class="button-white" plain size="small" @click="selectPatientHandler">添加居民</el-button>
</div>
</div>
<el-table
:data="residentList.fPlanPatientInfoDtoList"
center
@selection-change="handleSelectionChange"
style="width: 100%;margin-top: 20px;">
<el-table-column
type="selection"
......@@ -82,6 +83,7 @@
align="center">
</el-table-column>
<el-table-column
width="160"
prop="time"
label="随访开始时间"
align="center">
......@@ -92,6 +94,7 @@
align="center">
</el-table-column>
<el-table-column
width="190"
fixed="right"
label="操作"
align="center">
......@@ -165,6 +168,7 @@
finishData: {}, //结束数据
isShowSelectPatient: false, //显示居民选择框
hasSelectedList: [], //已选居民
finishPatientList: [], //结束随访居民(多选)
}
},
created() {
......@@ -226,9 +230,23 @@
this.showChangePlan = isShow
},
finishFollowup(row) {
this.finishData = {
patientName: row.patientName,
};
if(row=='all') {
if(this.finishPatientList.length<=0) {
this.$message({
message: '请选择居民!',
type: 'warning'
});
return;
}
this.finishData = {
patientName: row.patientName,
};
} else {
this.finishData = {
patientName: row.patientName,
};
}
this.showFinishFollowup = true;
},
closeFinishFollowup(isShow) {
......@@ -246,6 +264,10 @@
this.hasSelectedList = getArguments[1];
this.modifyInfo.hasSelectedNum = getArguments[1].length;
},
handleSelectionChange(val) {
console.log('已选居民',val)
this.finishPatientList = val;
}
},
watch: {
status(val) {
......
......@@ -9,19 +9,20 @@
<div class="search-div">
<div class="search-input">
<el-form :model="searchData" ref="searchData" :inline="true" :label-width="labelWidth">
<el-form-item label="随访计划名称:" prop="planName">
<el-input v-model="searchData.planName" placeholder="请输入随访计划名称" clearable></el-input>
<el-form-item label="随访计划名称:" prop="name">
<el-input v-model="searchData.name" size="small" placeholder="请输入随访计划名称" clearable></el-input>
</el-form-item>
<el-form-item label="姓名:" prop="nickName">
<el-input v-model="searchData.nickName" placeholder="请输入姓名" clearable></el-input>
<el-input v-model="searchData.nickName" size="small" placeholder="请输入姓名" clearable></el-input>
</el-form-item>
<el-form-item label="手机号:" prop="mobilePhone">
<el-input v-model="searchData.mobilePhone" placeholder="请输入手机号" clearable></el-input>
<el-input v-model="searchData.mobilePhone" size="small" placeholder="请输入手机号" clearable></el-input>
</el-form-item>
<el-form-item label="随访时间范围:" prop="planTimes" clearable>
<el-date-picker
v-model="searchData.planTimes"
v-model="searchData.timeRange"
type="daterange"
size="small"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
......@@ -43,21 +44,21 @@
</el-form>
</div>
<div class="search-btn">
<el-button class="button-green" type="primary" @click="searchReservationList">查询</el-button>
<el-button class="button-white" plain @click="resetSearchData('searchData')">重置</el-button>
<el-button class="button-green" type="primary" size="small" @click="searchReservationList">查询</el-button>
<el-button class="button-white" plain size="small" @click="resetSearchData('searchData')">重置</el-button>
</div>
</div>
<div class="reservation-table table-content">
<el-radio-group v-model="status">
<el-radio-group v-model="status" size="small">
<el-radio-button label="0">全部({{reservationList.total}})</el-radio-button>
<el-radio-button label="1">未发送({{reservationList.notCount}})</el-radio-button>
<el-radio-button label="2">待确认({{reservationList.handCount}})</el-radio-button>
<el-radio-button label="3">已接受({{reservationList.yesCount}})</el-radio-button>
<el-radio-button label="4">已拒绝({{reservationList.refuseCount }})</el-radio-button>
</el-radio-group>
<el-button class="button-green" type="primary" @click="sendReservation">发送预约</el-button>
<el-button class="button-green" type="primary" size="small" @click="sendReservation">发送预约</el-button>
<el-table
:data="reservationList.fPlanAppointmentDtoList"
:data="reservationList.fuPlanInfoList"
center
style="width: 100%;margin-top: 20px;"
@selection-change="handleSelectionChange">
......@@ -79,21 +80,24 @@
align="center">
</el-table-column>
<el-table-column
prop="planName"
prop="name"
label="随访计划名称"
align="center">
</el-table-column>
<el-table-column
prop="planTime"
width="160"
prop="fuPlanTime"
label="随访计划时间"
align="center">
</el-table-column>
<el-table-column
width="160"
prop="appointmentTime"
label="随访预约时间"
align="center">
</el-table-column>
<el-table-column
width="180"
fixed="right"
label="操作"
align="center">
......@@ -106,14 +110,14 @@
<div class="pagination">
<el-pagination
background
v-if="reservationList.fPlanAppointmentDtoList"
v-if="reservationList.fuPlanInfoList"
@size-change="handleSizeChangePre"
@current-change="handleCurrentChangePre"
layout="total, sizes, prev, pager, next, jumper"
:current-page="reservationList.pageNum"
:current-page="reservationList.pageNo"
:page-sizes="[10, 20, 50, 100]"
:page-size="reservationList.pageSize"
:total="reservationList.total">
:total="reservationList.count">
</el-pagination>
</div>
</div>
......@@ -220,7 +224,7 @@
},
handleCurrentChangePre(pageNum) {
this.getReservationList({
pageNum,
pageNo,
status: this.status,
...this.setSearchData()
})
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册