|
|
|
|
@ -6,16 +6,16 @@ |
|
|
|
|
@selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange" |
|
|
|
|
@refresh-change="refreshChange" @on-load="onLoad" @tree-load="treeLoad"> |
|
|
|
|
<template slot-scope="{row}" slot="num"> |
|
|
|
|
<div v-for="item1 in row.itemArr.map(item => item.monment + item.time)" :key="item1">{{item1}}</div> |
|
|
|
|
<div v-for="item1 in row.detailList.map(item => item.period + item.timeFrame)" :key="item1">{{item1}}</div> |
|
|
|
|
</template> |
|
|
|
|
<template slot-scope="{row}" slot="count"> |
|
|
|
|
<div v-for="item1 in row.itemArr.map(item => item.count)" :key="item1">{{item1}}</div> |
|
|
|
|
<div v-for="item1 in row.detailList.map(item => item.numberNum)" :key="item1">{{item1}}</div> |
|
|
|
|
</template> |
|
|
|
|
<template slot-scope="{row}" slot="people"> |
|
|
|
|
<div :class="row.itemArr.find(item => item.count == item1) ? 'cla' :''" v-for="item1 in row.itemArr.map(item => item.people)" :key="item1">{{item1}}</div> |
|
|
|
|
<div :class="row.detailList.find(item => item.numberNum == item1) ? 'cla' :''" v-for="item1 in row.detailList.map(item => item.apmNum)" :key="item1">{{item1}}</div> |
|
|
|
|
</template> |
|
|
|
|
<template slot-scope="{row}" slot="menu"> |
|
|
|
|
<el-button @click="handleRegister">修改</el-button> |
|
|
|
|
<el-button @click="handleRegister(row)">修改</el-button> |
|
|
|
|
</template> |
|
|
|
|
<template slot-scope="scope" slot="menuLeft"> |
|
|
|
|
<el-button type="primary" |
|
|
|
|
@ -26,25 +26,19 @@ |
|
|
|
|
<el-drawer |
|
|
|
|
:visible.sync="isNumber" |
|
|
|
|
:append-to-body="true" |
|
|
|
|
:with-header="false" |
|
|
|
|
@close="closeDraw" |
|
|
|
|
custom-class="number_box"> |
|
|
|
|
<div class="title_box"> |
|
|
|
|
<div slot="title" class="title_box"> |
|
|
|
|
<div class="title_txt"> |
|
|
|
|
<div class="txt">{{title}}</div> |
|
|
|
|
<div class="img_box" @click="closeDraw"> |
|
|
|
|
<img src="~@/assets/image/close.png" alt=""> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
<div class="sub_txt">{{subtitle}}</div> |
|
|
|
|
</div> |
|
|
|
|
<div class="tab_box" v-show="isShow"> |
|
|
|
|
<el-tabs v-model="activeName" @tab-click="handleClick"> |
|
|
|
|
<el-tab-pane :label="item.dictValue" :name="item.dictKey" v-for="item in tabArr" :key="item.dictValue"> |
|
|
|
|
<el-tab-pane :label="item.dictValue" :name="item.dictValue" v-for="item in tabArr" :key="item.dictValue"> |
|
|
|
|
<div class="form_box"> |
|
|
|
|
<div class="monment_txt">上午</div> |
|
|
|
|
<avue-form :option="item.addOption" v-model="item.addForm"></avue-form> |
|
|
|
|
<!-- <div class="monment_txt">下午</div> |
|
|
|
|
<avue-form :option="item.addOption1" v-model="item.addForm1"></avue-form> --> |
|
|
|
|
<avue-form ref="addFrom" :option="item.addOption" v-model="item.addForm" @submit="handleSubmit"></avue-form> |
|
|
|
|
</div> |
|
|
|
|
</el-tab-pane> |
|
|
|
|
</el-tabs> |
|
|
|
|
@ -54,23 +48,24 @@ |
|
|
|
|
<template |
|
|
|
|
slot="dateCell" |
|
|
|
|
slot-scope="{date, data}"> |
|
|
|
|
<p :class="[Date.parse(new Date(data.day)) < new Date().getTime() + 3600 * 1000 * 24 * 7 ? 'selected' : 'select',dayArr.find(item => item == data.day) ? 'isSelected' : '']" @click="clickCalc(data.day)"> |
|
|
|
|
<p :class="[Date.parse(new Date(data.day)) <= selectDay ? 'selected' : 'select',dayArr.find(item => item == data.day) ? 'isSelected' : '']" @click="clickCalc(data.day)"> |
|
|
|
|
{{ data.day.slice(-2) }} |
|
|
|
|
</p> |
|
|
|
|
</template> |
|
|
|
|
</el-calendar> |
|
|
|
|
</div> |
|
|
|
|
<div class="button_box"> |
|
|
|
|
<div class="button_box" v-show="!isShow"> |
|
|
|
|
<el-button>取消</el-button> |
|
|
|
|
<el-button type="primary" @click="submitForm(activeName)">提交</el-button> |
|
|
|
|
<el-button type="primary" @click="clickSubmit">提交</el-button> |
|
|
|
|
</div> |
|
|
|
|
</el-drawer> |
|
|
|
|
</basic-container> |
|
|
|
|
</template> |
|
|
|
|
|
|
|
|
|
<script> |
|
|
|
|
import {getList,getExamProject} from "@/api/booknumber/booknumber"; |
|
|
|
|
import {getUserInfo} from '@/api/system/user' |
|
|
|
|
import {getNumList,getExamProject,addExamProject,getHosList,examProjectDetail} from "@/api/booknumber/booknumber"; |
|
|
|
|
import {getUserInfo,getList} from '@/api/system/user' |
|
|
|
|
import { mapGetters } from "vuex"; |
|
|
|
|
export default { |
|
|
|
|
data() { |
|
|
|
|
return { |
|
|
|
|
@ -94,6 +89,7 @@ export default { |
|
|
|
|
addForm1: { |
|
|
|
|
addData: [] |
|
|
|
|
}, |
|
|
|
|
selectDay:'', |
|
|
|
|
addOption:{}, |
|
|
|
|
addOption1:{}, |
|
|
|
|
activeName: '', |
|
|
|
|
@ -120,7 +116,11 @@ export default { |
|
|
|
|
column: [ |
|
|
|
|
{ |
|
|
|
|
label: "体检项目", |
|
|
|
|
prop: "regName", |
|
|
|
|
prop: "project", |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
label: "日期", |
|
|
|
|
prop: "apmDay", |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
label: "日期", |
|
|
|
|
@ -129,9 +129,24 @@ export default { |
|
|
|
|
format: "yyyy-MM-dd", |
|
|
|
|
valueFormat: "yyyy-MM-dd", |
|
|
|
|
search: true, |
|
|
|
|
viewDisplay:false, |
|
|
|
|
hide:true, |
|
|
|
|
searchValue:new Date().getFullYear() + '-' + ((new Date().getMonth() + 1) < 10 ? '0' + (new Date().getMonth() + 1) : ((new Date().getMonth() + 1))) + '-' + (new Date().getDate() < 10 ? '0' + new Date().getDate() : new Date().getDate()), |
|
|
|
|
searchClearable:false |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
label:'医院', |
|
|
|
|
prop:'hosId', |
|
|
|
|
type:'select', |
|
|
|
|
hide: true, |
|
|
|
|
viewDisplay:false, |
|
|
|
|
props: { |
|
|
|
|
label: 'deptName', |
|
|
|
|
value: 'id' |
|
|
|
|
}, |
|
|
|
|
dicUrl: '/api/blade-system/dept-hospital/list-hospital', |
|
|
|
|
search:true |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
label: "体检项目", |
|
|
|
|
prop: "projectName", |
|
|
|
|
@ -169,64 +184,33 @@ export default { |
|
|
|
|
dayArr:[], |
|
|
|
|
depId:'', |
|
|
|
|
tabArr:[], |
|
|
|
|
tabsArr:[] |
|
|
|
|
tabsArr:[], |
|
|
|
|
roleName:'', |
|
|
|
|
isSelect:false, |
|
|
|
|
hospitalArr:[], |
|
|
|
|
isEdit:false |
|
|
|
|
}; |
|
|
|
|
}, |
|
|
|
|
computed: { |
|
|
|
|
|
|
|
|
|
}, |
|
|
|
|
mounted() { |
|
|
|
|
console.log(this.userInfo) |
|
|
|
|
if(this.userInfo.role_name !== 'hospital'){ |
|
|
|
|
this.option.column.find(item => item.prop == "hosId").search = true |
|
|
|
|
}else{ |
|
|
|
|
this.option.column.find(item => item.prop == "hosId").search = false |
|
|
|
|
} |
|
|
|
|
getExamProject().then(res =>{ |
|
|
|
|
res.data.data.map((item,index) =>{ |
|
|
|
|
this.option.column[2].dicData.push({ |
|
|
|
|
this.option.column.find(item => item.prop == "projectName").dicData.push({ |
|
|
|
|
label:item.dictValue, |
|
|
|
|
value:item.dictValue, |
|
|
|
|
|
|
|
|
|
}) |
|
|
|
|
}) |
|
|
|
|
this.tabArr.push({ |
|
|
|
|
dictValue:item.dictValue, |
|
|
|
|
dictKey:item.dictKey, |
|
|
|
|
addForm: { |
|
|
|
|
addData: [ |
|
|
|
|
{ |
|
|
|
|
timerange: '08:00am,08:30am', |
|
|
|
|
num: 1 |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
timerange: '08:30am,09:00am', |
|
|
|
|
num: 1 |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
timerange: '09:00am,09:30am', |
|
|
|
|
num: 1 |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
timerange: '09:30am,10:00am', |
|
|
|
|
num: 1 |
|
|
|
|
} |
|
|
|
|
], |
|
|
|
|
addData1: [ |
|
|
|
|
{ |
|
|
|
|
timerange: '13:00,13:30', |
|
|
|
|
num: 1 |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
timerange: '13:30,14:00', |
|
|
|
|
num: 1 |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
timerange: '14:00,14:30', |
|
|
|
|
num: 1 |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
timerange: '14:30,15:00', |
|
|
|
|
num: 1 |
|
|
|
|
} |
|
|
|
|
] |
|
|
|
|
}, |
|
|
|
|
addOption:{ |
|
|
|
|
emptyBtn:false, |
|
|
|
|
submitBtn:false, |
|
|
|
|
column: [ |
|
|
|
|
{ |
|
|
|
|
label:'上午', |
|
|
|
|
@ -247,7 +231,7 @@ export default { |
|
|
|
|
rules: [ |
|
|
|
|
{ |
|
|
|
|
required: true, |
|
|
|
|
message: '请输入姓名', |
|
|
|
|
message: '请选择放号时段', |
|
|
|
|
trigger: 'blur' |
|
|
|
|
} |
|
|
|
|
] |
|
|
|
|
@ -258,7 +242,15 @@ export default { |
|
|
|
|
controlsPosition:'', |
|
|
|
|
type:'number', |
|
|
|
|
min:1, |
|
|
|
|
max:20, |
|
|
|
|
span:10, |
|
|
|
|
rules: [ |
|
|
|
|
{ |
|
|
|
|
required: true, |
|
|
|
|
message: '请选择放号数量', |
|
|
|
|
trigger: 'blur' |
|
|
|
|
} |
|
|
|
|
] |
|
|
|
|
} |
|
|
|
|
] |
|
|
|
|
} |
|
|
|
|
@ -279,6 +271,13 @@ export default { |
|
|
|
|
format:'hh:mm a', |
|
|
|
|
valueFormat:'HH:mm', |
|
|
|
|
popperClass:'time', |
|
|
|
|
rules: [ |
|
|
|
|
{ |
|
|
|
|
required: true, |
|
|
|
|
message: '请选择放号时段', |
|
|
|
|
trigger: 'blur' |
|
|
|
|
} |
|
|
|
|
] |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
label:'放号数量', |
|
|
|
|
@ -286,17 +285,50 @@ export default { |
|
|
|
|
controlsPosition:'', |
|
|
|
|
type:'number', |
|
|
|
|
min:1, |
|
|
|
|
max:20, |
|
|
|
|
span:10, |
|
|
|
|
rules: [ |
|
|
|
|
{ |
|
|
|
|
required: true, |
|
|
|
|
message: '请选择放号数量', |
|
|
|
|
trigger: 'blur' |
|
|
|
|
} |
|
|
|
|
] |
|
|
|
|
} |
|
|
|
|
] |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
label: '投放医院', |
|
|
|
|
prop: 'select', |
|
|
|
|
type: 'select', |
|
|
|
|
props: { |
|
|
|
|
label: 'deptName', |
|
|
|
|
value: 'id' |
|
|
|
|
}, |
|
|
|
|
display:true, |
|
|
|
|
dicUrl: '/api/blade-system/dept-hospital/list-hospital', |
|
|
|
|
rules: [ |
|
|
|
|
{ |
|
|
|
|
required: true, |
|
|
|
|
message: '请选择投放医院', |
|
|
|
|
trigger: 'blur' |
|
|
|
|
} |
|
|
|
|
] |
|
|
|
|
} |
|
|
|
|
] |
|
|
|
|
}, |
|
|
|
|
addForm:{ |
|
|
|
|
addData:[], |
|
|
|
|
addData1:[] |
|
|
|
|
} |
|
|
|
|
}) |
|
|
|
|
}) |
|
|
|
|
}) |
|
|
|
|
}, |
|
|
|
|
computed:{ |
|
|
|
|
...mapGetters(["userInfo", "permission"]), |
|
|
|
|
}, |
|
|
|
|
methods: { |
|
|
|
|
clickCalc(day){ |
|
|
|
|
let tmp = this.dayArr.find(item => item == day) |
|
|
|
|
@ -306,86 +338,252 @@ export default { |
|
|
|
|
}else{ |
|
|
|
|
this.dayArr = this.dayArr.filter(item => item != tmp) |
|
|
|
|
} |
|
|
|
|
console.log(this.dayArr) |
|
|
|
|
// console.log(this.dayArr) |
|
|
|
|
}, |
|
|
|
|
spanMethod({ row, column, rowIndex, columnIndex }) { |
|
|
|
|
// console.log(row) |
|
|
|
|
// console.log(column) |
|
|
|
|
}, |
|
|
|
|
beforeOpen(done, type) { |
|
|
|
|
// if (["add", "edit"].includes(type)) { |
|
|
|
|
// this.initData(); |
|
|
|
|
// } |
|
|
|
|
// if (["edit", "view"].includes(type)) { |
|
|
|
|
// getDept(this.form.id).then(res => { |
|
|
|
|
// this.form = res.data.data; |
|
|
|
|
// }); |
|
|
|
|
// } |
|
|
|
|
done(); |
|
|
|
|
}, |
|
|
|
|
handleClick(tab, event){ |
|
|
|
|
this.addForm = { |
|
|
|
|
addData:[] |
|
|
|
|
}; |
|
|
|
|
this.addForm1 = { |
|
|
|
|
addData:[] |
|
|
|
|
// 点击新增按钮 |
|
|
|
|
addNumber(){ |
|
|
|
|
this.activeName = this.tabArr[0].dictValue; |
|
|
|
|
this.isNumber = true; |
|
|
|
|
this.isShow = true; |
|
|
|
|
this.tabArr.map(item =>{ |
|
|
|
|
item.addForm={ |
|
|
|
|
addData: [ |
|
|
|
|
{ |
|
|
|
|
timerange: '08:00am,08:30am', |
|
|
|
|
num: 1 |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
timerange: '08:30am,09:00am', |
|
|
|
|
num: 1 |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
timerange: '09:00am,09:30am', |
|
|
|
|
num: 1 |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
timerange: '09:30am,10:00am', |
|
|
|
|
num: 1 |
|
|
|
|
} |
|
|
|
|
], |
|
|
|
|
addData1: [ |
|
|
|
|
{ |
|
|
|
|
timerange: '13:00,13:30', |
|
|
|
|
num: 1 |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
timerange: '13:30,14:00', |
|
|
|
|
num: 1 |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
timerange: '14:00,14:30', |
|
|
|
|
num: 1 |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
timerange: '14:30,15:00', |
|
|
|
|
num: 1 |
|
|
|
|
} |
|
|
|
|
], |
|
|
|
|
select:'' |
|
|
|
|
} |
|
|
|
|
}) |
|
|
|
|
if(this.userInfo.role_name !== "hospital"){ |
|
|
|
|
this.selectDay = new Date().getTime(); |
|
|
|
|
this.tabArr.map(item =>{ |
|
|
|
|
item.addOption.column.find(item1 => item1.prop == "select").display = true |
|
|
|
|
}) |
|
|
|
|
|
|
|
|
|
}else{ |
|
|
|
|
this.selectDay = new Date().getTime() + 3600 * 1000 * 24 * 7; |
|
|
|
|
this.tabArr.map(item =>{ |
|
|
|
|
item.addOption.column.find(item1 => item1.prop == "select").display = false |
|
|
|
|
}) |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
submitForm(value){ |
|
|
|
|
this.count = 0; |
|
|
|
|
// let tmp = this.tabArr.find(item => item.dictKey = value); |
|
|
|
|
// let tmp1 = tmp.addForm.addData.find(item => item.timerange !== '' && item.num !== undefined) |
|
|
|
|
// let tmp2 = tmp.addForm.addData1.find(item => item.timerange !== '' && item.num !== undefined) |
|
|
|
|
// if(!tmp1 && !tmp2){ |
|
|
|
|
// this.$message.error('请至少添加一条数据') |
|
|
|
|
// }else{ |
|
|
|
|
// tmp.addForm.addData.map(item =>{ |
|
|
|
|
// if(item.timerange !== '' && item.num == undefined){ |
|
|
|
|
// this.$message.error('请设置放号数量') |
|
|
|
|
// }else if(item.timerange == '' && item.num !== undefined){ |
|
|
|
|
// this.$message.error('请设置放号时段') |
|
|
|
|
// } |
|
|
|
|
// console.log(tmp) |
|
|
|
|
// this.count += item.num; |
|
|
|
|
// }) |
|
|
|
|
// tmp.addForm.addData1.map(item =>{ |
|
|
|
|
// if(item.timerange !== '' && item.num == undefined){ |
|
|
|
|
// this.$message.error('请设置放号数量') |
|
|
|
|
// }else if(item.timerange == '' && item.num !== undefined){ |
|
|
|
|
// this.$message.error('请设置放号时段') |
|
|
|
|
// }else{ |
|
|
|
|
// this.count += item.num; |
|
|
|
|
// // this.addForm1 = tmp.addForm.addData1 |
|
|
|
|
// } |
|
|
|
|
// }) |
|
|
|
|
// } |
|
|
|
|
|
|
|
|
|
// // console.log(this.addForm,this.addForm1) |
|
|
|
|
// 点击修改按扭 |
|
|
|
|
handleRegister(row){ |
|
|
|
|
this.isEdit = true; |
|
|
|
|
let values = { |
|
|
|
|
createDept:row.createDept, |
|
|
|
|
project:row.project, |
|
|
|
|
apmDay:row.apmDay.substr(0,10) |
|
|
|
|
} |
|
|
|
|
this.dayArr.push(row.apmDay.substr(0,10)) |
|
|
|
|
examProjectDetail(values).then(res =>{ |
|
|
|
|
console.log(res.data.data) |
|
|
|
|
let data = res.data.data; |
|
|
|
|
this.isNumber = true; |
|
|
|
|
this.isShow = true; |
|
|
|
|
this.activeName = data[0].project; |
|
|
|
|
let val = this.tabArr.find(item => item.dictValue == this.activeName); |
|
|
|
|
if(this.userInfo.role_name !== 'hospital'){ |
|
|
|
|
val.addOption.column.find(item => item.prop == "select").display = true; |
|
|
|
|
this.selectDay = new Date().getTime(); |
|
|
|
|
}else{ |
|
|
|
|
this.selectDay = new Date().getTime() + 3600 * 1000 * 24 * 7; |
|
|
|
|
val.addOption.column.find(item => item.prop == "select").display = false |
|
|
|
|
} |
|
|
|
|
val.addForm.addData = []; |
|
|
|
|
val.addForm.addData1 = []; |
|
|
|
|
data[0].createDept = "1623571646250143746" |
|
|
|
|
val.addForm.select = data[0].createDept |
|
|
|
|
console.log(val) |
|
|
|
|
data.map(item =>{ |
|
|
|
|
if(item.period == '上午'){ |
|
|
|
|
item.timeFrame = item.timeFrame.replace('-','am,').concat('am') |
|
|
|
|
val.addForm.addData.push({ |
|
|
|
|
num:item.numberNum, |
|
|
|
|
timerange:item.timeFrame |
|
|
|
|
}) |
|
|
|
|
}else{ |
|
|
|
|
let index = item.timeFrame.indexOf(":"); |
|
|
|
|
let index1 = item.timeFrame.indexOf("-"); |
|
|
|
|
let tmp = (parseInt(item.timeFrame.slice(0,item.timeFrame.indexOf(":"))) + 12) + item.timeFrame.slice(item.timeFrame.indexOf(":")); |
|
|
|
|
let tmp1 = tmp.substring(0,index1 + 2) + (parseInt(tmp.substring(index1 + 2,tmp.indexOf(":",index + 2))) + 12) + tmp.substring(tmp.indexOf(":",index + 2)) |
|
|
|
|
item.timeFrame = tmp1.replace('-',',') |
|
|
|
|
val.addForm.addData1.push({ |
|
|
|
|
num:item.numberNum, |
|
|
|
|
timerange:item.timeFrame |
|
|
|
|
}) |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
}) |
|
|
|
|
}) |
|
|
|
|
}, |
|
|
|
|
closeDraw(){ |
|
|
|
|
this.isNumber = false |
|
|
|
|
handleClick(tab, event){ |
|
|
|
|
let tmp = this.tabArr.find(item => item.dictValue == tab.label); |
|
|
|
|
tmp.addForm = { |
|
|
|
|
addData: [ |
|
|
|
|
{ |
|
|
|
|
timerange: '08:00am,08:30am', |
|
|
|
|
num: 1 |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
timerange: '08:30am,09:00am', |
|
|
|
|
num: 1 |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
timerange: '09:00am,09:30am', |
|
|
|
|
num: 1 |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
timerange: '09:30am,10:00am', |
|
|
|
|
num: 1 |
|
|
|
|
} |
|
|
|
|
], |
|
|
|
|
addData1: [ |
|
|
|
|
{ |
|
|
|
|
timerange: '13:00,13:30', |
|
|
|
|
num: 1 |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
timerange: '13:30,14:00', |
|
|
|
|
num: 1 |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
timerange: '14:00,14:30', |
|
|
|
|
num: 1 |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
timerange: '14:30,15:00', |
|
|
|
|
num: 1 |
|
|
|
|
} |
|
|
|
|
] |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
addNumber(){ |
|
|
|
|
this.activeName = this.tabArr[0].dictKey; |
|
|
|
|
this.isNumber = true; |
|
|
|
|
this.addForm = { |
|
|
|
|
addData:[ |
|
|
|
|
{ |
|
|
|
|
timerange: "08:00am,08:30am", |
|
|
|
|
num: 1 |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
handleSubmit(value,done){ |
|
|
|
|
this.count = 0; |
|
|
|
|
value.addData.map(item => this.count += item.num) |
|
|
|
|
value.addData1.map(item => this.count += item.num) |
|
|
|
|
console.log(this.count) |
|
|
|
|
if(JSON.stringify(value) === '{}'){ |
|
|
|
|
this.$message.error('请至少添加一条数据'); |
|
|
|
|
done() |
|
|
|
|
}else{ |
|
|
|
|
if(this.isEdit){ |
|
|
|
|
this.$confirm(`是否对此时段号源进行增加号源数量变更?`, '提示', { |
|
|
|
|
confirmButtonText: '确定', |
|
|
|
|
cancelButtonText: '取消', |
|
|
|
|
type: 'warning', |
|
|
|
|
customClass:'dialog_box' |
|
|
|
|
}).then(() => { |
|
|
|
|
this.addForm1 = value; |
|
|
|
|
this.isShow = false; |
|
|
|
|
this.title = '放号日期'; |
|
|
|
|
this.subtitle = '请选择配置号源投放的具体日期。' |
|
|
|
|
done() |
|
|
|
|
}).catch(() => { |
|
|
|
|
done() |
|
|
|
|
}); |
|
|
|
|
}else{ |
|
|
|
|
this.$confirm(`该天投放号源为${this.count}人次, 是否确认?`, '提示', { |
|
|
|
|
confirmButtonText: '确定', |
|
|
|
|
cancelButtonText: '取消', |
|
|
|
|
type: 'warning', |
|
|
|
|
customClass:'dialog_box' |
|
|
|
|
}).then(() => { |
|
|
|
|
this.addForm1 = value; |
|
|
|
|
this.isShow = false; |
|
|
|
|
this.title = '放号日期'; |
|
|
|
|
this.subtitle = '请选择配置号源投放的具体日期。' |
|
|
|
|
done() |
|
|
|
|
}).catch(() => { |
|
|
|
|
done() |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
// 提交放号 |
|
|
|
|
clickSubmit(){ |
|
|
|
|
console.log(this.addForm1.select) |
|
|
|
|
let values = { |
|
|
|
|
dayList:this.dayArr, |
|
|
|
|
createDept:this.addForm1.select == undefined ? this.userInfo.dept_id : this.addForm1.select, |
|
|
|
|
configListVOS:[ |
|
|
|
|
{ |
|
|
|
|
timerange: "09:00am,09:30am", |
|
|
|
|
num: 2 |
|
|
|
|
createDept:this.addForm1.select == undefined ? this.userInfo.dept_id : this.addForm1.select, |
|
|
|
|
project:this.tabArr.find(item => item.dictValue == this.activeName).dictValue, |
|
|
|
|
detailList:[] |
|
|
|
|
} |
|
|
|
|
] |
|
|
|
|
} |
|
|
|
|
this.addForm1.addData.map(item =>{ |
|
|
|
|
values.configListVOS[0].detailList.push({ |
|
|
|
|
period:'上午', |
|
|
|
|
timeFrame:item.timerange.replace(",","-").replaceAll('am',''), |
|
|
|
|
numberNum:item.num, |
|
|
|
|
}) |
|
|
|
|
}) |
|
|
|
|
this.addForm1.addData1.map(item =>{ |
|
|
|
|
let startTime = (parseInt(item.timerange.substr(0,2)) - 12) + item.timerange.substr(2,3); |
|
|
|
|
let endTime = (parseInt(item.timerange.substr(6,7)) - 12) + item.timerange.substr(8,9) |
|
|
|
|
values.configListVOS[0].detailList.push({ |
|
|
|
|
period:'下午', |
|
|
|
|
timeFrame:startTime + '-' + endTime, |
|
|
|
|
numberNum:item.num, |
|
|
|
|
}) |
|
|
|
|
}) |
|
|
|
|
addExamProject(values).then(res =>{ |
|
|
|
|
console.log(res) |
|
|
|
|
if(res.data.code == 200){ |
|
|
|
|
this.$message.success('放号成功'); |
|
|
|
|
this.isNumber = false |
|
|
|
|
} |
|
|
|
|
}) |
|
|
|
|
}, |
|
|
|
|
closeDraw(){ |
|
|
|
|
this.isNumber = false |
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
beforeClose(done) { |
|
|
|
|
// this.parentId = ""; |
|
|
|
|
// const column = this.findObject(this.option.column, "parentId"); |
|
|
|
|
// // column.value = ""; |
|
|
|
|
// column.addDisabled = false; |
|
|
|
|
done(); |
|
|
|
|
}, |
|
|
|
|
searchChange(params, done) { |
|
|
|
|
@ -404,32 +602,41 @@ export default { |
|
|
|
|
this.onLoad(this.page, this.query); |
|
|
|
|
}, |
|
|
|
|
onLoad(page, params = {}) { |
|
|
|
|
const { releaseTime,project, } = this.query; |
|
|
|
|
const { releaseTime,project,createDept } = this.query; |
|
|
|
|
let values = {}; |
|
|
|
|
getUserInfo().then(res =>{ |
|
|
|
|
this.depId = res.data.data.id; |
|
|
|
|
if(releaseTime){ |
|
|
|
|
this.hospitalArr = [] |
|
|
|
|
// this.userInfo.role_name = "hospital" |
|
|
|
|
if(this.userInfo.role_name !== "hospital"){ |
|
|
|
|
getHosList().then(res =>{ |
|
|
|
|
this.hospitalArr = res.data.data; |
|
|
|
|
this.option.column[2].search = true; |
|
|
|
|
this.option.column[2].dicData = this.hospitalArr; |
|
|
|
|
}) |
|
|
|
|
}else{ |
|
|
|
|
this.query.hosId = this.userInfo.dept_id |
|
|
|
|
} |
|
|
|
|
if(releaseTime){ |
|
|
|
|
values = { |
|
|
|
|
startTime:this.query.releaseTime, |
|
|
|
|
endTime:this.query.releaseTime, |
|
|
|
|
project:this.query.projectName == '全部' ? '' : this.query.projectName, |
|
|
|
|
createDept:this.depId |
|
|
|
|
createDept:this.query.hosId |
|
|
|
|
}; |
|
|
|
|
}else{ |
|
|
|
|
values = { |
|
|
|
|
startTime : new Date().getFullYear() + '-' + ((new Date().getMonth() + 1) < 10 ? '0' + (new Date().getMonth() + 1) : ((new Date().getMonth() + 1))) + '-' + (new Date().getDate() < 10 ? '0' + new Date().getDate() : new Date().getDate()), |
|
|
|
|
endTime : new Date().getFullYear() + '-' + ((new Date().getMonth() + 1) < 10 ? '0' + (new Date().getMonth() + 1) : ((new Date().getMonth() + 1))) + '-' + (new Date().getDate() < 10 ? '0' + new Date().getDate() : new Date().getDate()), |
|
|
|
|
createDept:this.depId, |
|
|
|
|
createDept:this.query.hosId, |
|
|
|
|
project:'' |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
getList(page.currentPage, page.pageSize,values).then(res =>{ |
|
|
|
|
getNumList(page.currentPage, page.pageSize,values).then(res =>{ |
|
|
|
|
const data = res.data.data; |
|
|
|
|
this.page.total = data.total; |
|
|
|
|
this.data = data.records; |
|
|
|
|
console.log(this.data) |
|
|
|
|
this.loading = false; |
|
|
|
|
}) |
|
|
|
|
}) |
|
|
|
|
}, |
|
|
|
|
} |
|
|
|
|
}; |
|
|
|
|
@ -469,6 +676,12 @@ export default { |
|
|
|
|
} |
|
|
|
|
</style> |
|
|
|
|
<style lang="scss"> |
|
|
|
|
.dialog_box{ |
|
|
|
|
right: 10%; |
|
|
|
|
position: absolute; |
|
|
|
|
top: 50%; |
|
|
|
|
transform: translateY(-50%); |
|
|
|
|
} |
|
|
|
|
.el-drawer__wrapper{ |
|
|
|
|
.number_box{ |
|
|
|
|
width: 45% !important; |
|
|
|
|
@ -477,8 +690,8 @@ export default { |
|
|
|
|
overflow: hidden; |
|
|
|
|
} |
|
|
|
|
.title_box{ |
|
|
|
|
padding: 0 40px; |
|
|
|
|
margin-top: 40px; |
|
|
|
|
// padding: 0 40px; |
|
|
|
|
// margin-top: 40px; |
|
|
|
|
.title_txt{ |
|
|
|
|
display: flex; |
|
|
|
|
height: 30px; |
|
|
|
|
@ -486,10 +699,9 @@ export default { |
|
|
|
|
justify-content: space-between; |
|
|
|
|
|
|
|
|
|
.txt{ |
|
|
|
|
font-weight: bold; |
|
|
|
|
color: #333333; |
|
|
|
|
line-height: 16px; |
|
|
|
|
font-size: 20px; |
|
|
|
|
color: rgba(0,0,0,.85); |
|
|
|
|
font-weight: 500; |
|
|
|
|
line-height: 24px; |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
.img_box{ |
|
|
|
|
|