修改添加放号记录传值

main
jinna 3 years ago
parent d07377eade
commit 178c7ed7aa
  1. 323
      src/views/booknumber/index.vue

@ -6,13 +6,13 @@
@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.detailList.map(item => item.period + item.timeFrame)" :key="item1">{{item1}}</div>
<div v-for="item1 in row.detailList.map(item => item.period + item.timeFrame)" >{{item1}}</div>
</template>
<template slot-scope="{row}" slot="count">
<div v-for="item1 in row.detailList.map(item => item.numberNum)" :key="item1">{{item1}}</div>
<div v-for="item2 in row.detailList.map(item1 => item1.numberNum)" >{{item2}}</div>
</template>
<template slot-scope="{row}" slot="people">
<div :class="row.detailList.find(item => item.numberNum == item1) ? 'cla' :''" v-for="item1 in row.detailList.map(item => item.apmNum)" :key="item1">{{item1}}</div>
<div :class="row.detailList.find(item => item.numberNum == item.apmNum) ? 'cla' :''" v-for="item1 in row.detailList.map(item => item.apmNum)" >{{item1}}</div>
</template>
<template slot-scope="{row}" slot="menu">
<el-button @click="handleRegister(row)">修改</el-button>
@ -27,14 +27,15 @@
:visible.sync="isNumber"
:append-to-body="true"
@close="closeDraw"
custom-class="number_box">
custom-class="number_box"
>
<div slot="title" class="title_box">
<div class="title_txt">
<div class="txt">{{title}}</div>
</div>
<div class="sub_txt">{{subtitle}}</div>
</div>
<div class="tab_box" v-show="isShow">
<div class="tab_box" v-if="isShow">
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane :label="item.dictValue" :name="item.dictValue" v-for="item in tabArr" :key="item.dictValue">
<div class="form_box">
@ -104,7 +105,6 @@ export default {
border: true,
index: true,
viewBtn: false,
border:false,
editBtn:false,
delBtn:false,
addBtn:false,
@ -127,17 +127,29 @@ export default {
return `<div>${value.apmDay.substring(0, 10)}</div>`
}
},
// {
// label: "",
// prop: "releaseTime",
// type: "date",
// 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: "releaseTime",
type: "date",
type: "daterange",
format: "yyyy-MM-dd",
valueFormat: "yyyy-MM-dd",
searchRange: true,
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
hide: true,
startPlaceholder: '开始日期',
endPlaceholder: '结束日期',
},
{
label:'医院',
@ -170,7 +182,8 @@ export default {
{
label:'放号时段',
prop:"num",
slot:true
slot:true,
overHidden:true
},
{
label: "号源数量",
@ -264,7 +277,7 @@ export default {
prop:'num',
controlsPosition:'',
type:'number',
min:1,
min:0,
max:20,
span:10,
rules: [
@ -308,7 +321,7 @@ export default {
prop:'num',
controlsPosition:'',
type:'number',
min:1,
min:0,
max:20,
span:10,
rules: [
@ -369,6 +382,10 @@ export default {
},
beforeOpen(done, type) {
done();
},
searchReset() {
this.query = {};
this.onLoad(this.page);
},
//
addNumber(){
@ -380,37 +397,37 @@ export default {
addData: [
{
timerange: '08:00am,08:30am',
num: 1
num: 0
},
{
timerange: '08:30am,09:00am',
num: 1
num: 0
},
{
timerange: '09:00am,09:30am',
num: 1
num: 0
},
{
timerange: '09:30am,10:00am',
num: 1
num: 0
}
],
addData1: [
{
timerange: '13:00,13:30',
num: 1
num: 0
},
{
timerange: '13:30,14:00',
num: 1
num: 0
},
{
timerange: '14:00,14:30',
num: 1
num: 0
},
{
timerange: '14:30,15:00',
num: 1
num: 0
}
],
select:''
@ -440,96 +457,150 @@ export default {
}
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
})
// let val = this.tabArr.find(item => item.dictValue == this.activeName);
this.tabArr.map(item => {
if(this.userInfo.role_name !== 'hospital'){
item.addOption.column.find(item => item.prop == "select").display = true;
this.selectDay = new Date().getTime();
}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
})
this.selectDay = new Date().getTime() + 3600 * 1000 * 24 * 7;
item.addOption.column.find(item => item.prop == "select").display = false
}
})
})
},
handleClick(tab, event){
let tmp = this.tabArr.find(item => item.dictValue == tab.label);
tmp.addForm = {
addData: [
if(item.dictValue == this.activeName){
item.addForm.addData = [];
item.addForm.addData1 = [];
data[0].createDept = "1623571646250143746"
item.addForm.select = data[0].createDept;
data.map(item1 =>{
if(item1.period == '上午'){
item1.timeFrame = item1.timeFrame.replace('-','am,').concat('am')
item.addForm.addData.push({
num:item1.numberNum,
timerange:item1.timeFrame
})
}else{
let index = item1.timeFrame.indexOf(":");
let index1 = item1.timeFrame.indexOf("-");
let tmp = (parseInt(item1.timeFrame.slice(0,item1.timeFrame.indexOf(":"))) + 12) + item1.timeFrame.slice(item1.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))
item1.timeFrame = tmp1.replace('-',',')
item.addForm.addData1.push({
num:item1.numberNum,
timerange:item1.timeFrame
})
}
})
return
}else{
item.addForm.addData = []
item.addForm.addData1 = []
item.addForm.addData.push(
{
timerange: '08:00am,08:30am',
num: 1
num: 0
},
{
timerange: '08:30am,09:00am',
num: 1
num: 0
},
{
timerange: '09:00am,09:30am',
num: 1
num: 0
},
{
timerange: '09:30am,10:00am',
num: 1
num: 0
}
],
addData1: [
{
)
item.addForm.addData1.push(
{
timerange: '13:00,13:30',
num: 1
num: 0
},
{
timerange: '13:30,14:00',
num: 1
num: 0
},
{
timerange: '14:00,14:30',
num: 1
num: 0
},
{
timerange: '14:30,15:00',
num: 1
num: 0
}
]
}
)
return
}
})
})
console.log(this.tabArr)
},
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
// }
// ]
// }
},
handleSubmit(value,done){
console.log(this.tabArr)
this.count = 0;
value.addData.map(item => this.count += item.num)
value.addData1.map(item => this.count += item.num)
this.dayArr = []
if(JSON.stringify(value) === '{}'){
this.tabArr.map(item =>{
item.addForm.addData.map(item1 => this.count += item1.num)
item.addForm.addData1.map(item1 => this.count += item1.num)
})
if(this.tabArr[0].addForm.addData.length == 0 && this.tabArr[1].addForm.addData.length == 0
&& this.tabArr[2].addForm.addData.length == 0 && this.tabArr[0].addForm.addData1.length == 0
&& this.tabArr[1].addForm.addData1.length == 0 && this.tabArr[2].addForm.addData1.length == 0){
this.$message.error('请至少添加一条数据');
done()
}else if(this.count == 0){
this.$message.error('号源数量不可为0');
done()
}else{
if(this.isEdit){
this.$confirm(`是否对此时段号源进行增加号源数量变更?`, '提示', {
@ -538,22 +609,22 @@ export default {
type: 'warning',
customClass:'dialog_box'
}).then(() => {
this.addForm1 = value;
this.isShow = false;
this.title = '放号日期';
this.subtitle = '请选择配置号源投放的具体日期。'
done()
}).catch(() => {
done()
});
}else{
this.dayArr = []
this.$confirm(`该天投放号源为${this.count}人次, 是否确认?`, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
customClass:'dialog_box'
}).then(() => {
this.addForm1 = value;
this.isShow = false;
this.title = '放号日期';
this.subtitle = '请选择配置号源投放的具体日期。'
@ -567,34 +638,73 @@ export default {
},
//
clickSubmit(){
console.log(this.addForm1.select)
let values = {
dayList:this.dayArr,
createDept:this.addForm1.select == undefined ? this.userInfo.dept_id : this.addForm1.select,
configListVOS:[
{
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,
let configListVOS = []
this.tabArr.map(item =>{
configListVOS.push({
createDept:this.addForm1.select == undefined ? this.userInfo.dept_id : this.addForm1.select,
project:item.dictValue,
detailList:[]
})
})
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,
if(this.isEdit){
this.tabArr.map(item =>{
configListVOS.map(item1 =>{
if(item1.project == item.dictValue){
item.addForm.addData.map(item2 =>{
item1.detailList.push({
period:'上午',
timeFrame:item2.timerange.replace(",","-").replaceAll('am',''),
numberNum:item2.num,
})
})
item.addForm.addData1.map(item3 =>{
let startTime = (parseInt(item3.timerange.substr(0,2)) - 12) + item3.timerange.substr(2,3);
let endTime = (parseInt(item3.timerange.substr(6,7)) - 12) + item3.timerange.substr(8,9)
item1.detailList.push({
period:'下午',
timeFrame:startTime + '-' + endTime,
numberNum:item3.num,
})
})
}
})
})
})
values.configListVOS = configListVOS
}else{
this.tabArr.map(item =>{
configListVOS.map(item1 =>{
if(item1.project == item.dictValue){
item.addForm.addData.map(item2 =>{
if(item2.num !== 0){
item1.detailList.push({
period:'上午',
timeFrame:item2.timerange.replace(",","-").replaceAll('am',''),
numberNum:item2.num,
})
}
})
item.addForm.addData1.map(item3 =>{
let startTime = (parseInt(item3.timerange.substr(0,2)) - 12) + item3.timerange.substr(2,3);
let endTime = (parseInt(item3.timerange.substr(6,7)) - 12) + item3.timerange.substr(8,9)
if(item3.num !== 0){
item1.detailList.push({
period:'下午',
timeFrame:startTime + '-' + endTime,
numberNum:item.num,
})
}
})
}
})
})
configListVOS = configListVOS.filter(item => item.detailList.length !== 0);
values.configListVOS = configListVOS
}
addExamProject(values).then(res =>{
console.log(res)
if(res.data.code == 200){
@ -641,25 +751,28 @@ export default {
this.query.hosId = this.userInfo.dept_id
}
if(releaseTime){
console.log(this.query)
values = {
startTime:this.query.releaseTime,
endTime:this.query.releaseTime,
startTime:this.query.releaseTime[0],
endTime:this.query.releaseTime[1],
project:this.query.projectName == '全部' ? '' : this.query.projectName,
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()),
// 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()),
startTime:'',
endTime:'',
createDept:this.query.hosId,
project:''
}
}
getNumList(page.currentPage, page.pageSize,values).then(res =>{
console.log(res)
const data = res.data.data;
this.page.total = data.total;
this.data = data.records;
console.log(this.data)
this.loading = false;
})
},

Loading…
Cancel
Save