|
|
|
@ -4,15 +4,26 @@ |
|
|
|
:permission="permissionList" :before-open="beforeOpen" :before-close="beforeClose" @search-change="searchChange" |
|
|
|
:permission="permissionList" :before-open="beforeOpen" :before-close="beforeClose" @search-change="searchChange" |
|
|
|
@search-reset="searchReset" @current-change="currentChange" @size-change="sizeChange" |
|
|
|
@search-reset="searchReset" @current-change="currentChange" @size-change="sizeChange" |
|
|
|
@refresh-change="refreshChange" @on-load="onLoad"> |
|
|
|
@refresh-change="refreshChange" @on-load="onLoad"> |
|
|
|
|
|
|
|
<template slot-scope="{row}" slot="examDate"> |
|
|
|
|
|
|
|
<div v-for="item1 in row.details.map(item => item.period + item.timeFrame)" :key="item1">{{item1}}</div> |
|
|
|
|
|
|
|
</template> |
|
|
|
|
|
|
|
<template slot-scope="{row}" slot="examPro"> |
|
|
|
|
|
|
|
<div v-for="item1 in row.details.map(item => item.project)" :key="item1">{{item1}}</div> |
|
|
|
|
|
|
|
</template> |
|
|
|
<template slot-scope="{row}" slot="apmStatus"> |
|
|
|
<template slot-scope="{row}" slot="apmStatus"> |
|
|
|
<el-tag size="small" |
|
|
|
<div v-for="item1 in row.details.map(item => item.apmStatus)" :key="item1"> |
|
|
|
:type="row.apmStatus == 3 ? 'success' : row.apmStatus == 2 ? 'warning' : row.apmStatus == 3 ? 'danger' : 'info'">{{ |
|
|
|
<el-tag size="small" |
|
|
|
row.apmStatus == 3 ? '已报道' : row.apmStatus == 2 ? '未报道' : row.apmStatus == 1 ? '已取消' : '未报到' |
|
|
|
:type="item1 == 3 ? 'success' : item1 == 2 ? 'warning' : item1 == 3 ? 'danger' : 'info'" |
|
|
|
}}</el-tag> |
|
|
|
> |
|
|
|
|
|
|
|
{{ |
|
|
|
|
|
|
|
item1 == 3 ? '已报道' : item1 == 2 ? '未报道' : item1 == 1 ? '已取消' : '未报到' |
|
|
|
|
|
|
|
}} |
|
|
|
|
|
|
|
</el-tag> |
|
|
|
|
|
|
|
</div> |
|
|
|
</template> |
|
|
|
</template> |
|
|
|
<template slot-scope="{row}" slot="menu"> |
|
|
|
<template slot-scope="{row}" slot="menu"> |
|
|
|
<el-button type="text" @click="handleRegister(row)" |
|
|
|
<el-button type="text" @click="handleRegister(row)" |
|
|
|
:disabled="row.apmStatus == 2 ? false : true">预约报道</el-button> |
|
|
|
:disabled="(row.details.find(item => item.apmStatus == 2) && row.apmDay > systemTime) ? false : true">预约报道</el-button> |
|
|
|
</template> |
|
|
|
</template> |
|
|
|
</avue-crud> |
|
|
|
</avue-crud> |
|
|
|
<el-drawer |
|
|
|
<el-drawer |
|
|
|
@ -29,35 +40,34 @@ |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div style="padding:0 40px;"> |
|
|
|
<div style="padding:0 40px;"> |
|
|
|
<div class="tip_box"> |
|
|
|
<div class="tip_box"> |
|
|
|
<img v-show="regData.status == 1" src="~@/assets/image/succ.png" alt=""> |
|
|
|
<img v-show="regData.resStatus == 1" src="~@/assets/image/succ.png" alt=""> |
|
|
|
<img v-show="regData.status == 2" src="~@/assets/image/fail.png" alt=""> |
|
|
|
<img v-show="regData.resStatus == 0" src="~@/assets/image/fail.png" alt=""> |
|
|
|
<img v-show="regData.status == 3" src="~@/assets/image/warn.png" alt=""> |
|
|
|
<!-- <img v-show="regData.resStatus == 3" src="~@/assets/image/warn.png" alt=""> --> |
|
|
|
<div class="tip_txt" :class="regData.status == 2 ? 'fail_txt' : regData.status == 3 ? 'warn_txt' : ''"> |
|
|
|
<div class="tip_txt" :class="regData.resStatus == 0 ? 'fail_txt' : ''"> |
|
|
|
{{ regData.status == 1 ? '报道成功' : '报道失败' }}</div> |
|
|
|
{{ regData.resStatus == 1 ? '报道成功' : '报道失败' }}</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="tips_txt" v-show="regData.status == 2">无此人员预约检测项目,请预约后按时间报道</div> |
|
|
|
<div class="tips_txt">{{regData.resMsg}}</div> |
|
|
|
<div class="tips_txt tips_warn" v-show="regData.status == 3">报到时间与预约时间不符,请按预约时间报道</div> |
|
|
|
|
|
|
|
<div class="account_mess"> |
|
|
|
<div class="account_mess"> |
|
|
|
<div class="mess_tit">账号信息</div> |
|
|
|
<div class="mess_tit">账号信息</div> |
|
|
|
<div class="mess_box"> |
|
|
|
<div class="mess_box"> |
|
|
|
<div class="left_box" :class="regData.status == 2 ? 'fail_box' : regData.status == 3 ? 'warn_box' : ''"> |
|
|
|
<div class="left_box" :class="regData.resStatus == 0 ? 'fail_box' : ''"> |
|
|
|
<div class="acc_text">姓名</div> |
|
|
|
<div class="acc_text">姓名</div> |
|
|
|
<div class="acc_txt">{{ regData.name }}</div> |
|
|
|
<div class="acc_txt">{{regData.resData ? regData.resData.cupName : '' }}</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="right_box" |
|
|
|
<div class="right_box" |
|
|
|
:class="regData.status == 2 ? 'fail_right' : regData.status == 3 ? 'warn_right' : ''"> |
|
|
|
:class="regData.resStatus == 0 ? 'fail_right' : ''"> |
|
|
|
<div class="acc_box"> |
|
|
|
<div class="acc_box"> |
|
|
|
<div class="acc_text">身份证号</div> |
|
|
|
<div class="acc_text">身份证号</div> |
|
|
|
<div class="acc_txt">{{ regData.cardId }}</div> |
|
|
|
<div class="acc_txt">{{ regData.resData ? regData.resData.cupCardNo : '' }}</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="acc_box"> |
|
|
|
<div class="acc_box"> |
|
|
|
<div class="acc_text">联系方式</div> |
|
|
|
<div class="acc_text">联系方式</div> |
|
|
|
<div class="acc_txt">{{ regData.phone }}</div> |
|
|
|
<div class="acc_txt">{{ regData.resData ? regData.resData.cupPhone : '' }}</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="img_box"> |
|
|
|
<div class="img_box"> |
|
|
|
<img v-show="regData.status == 1" src="~@/assets/image/succ_img.png" alt=""> |
|
|
|
<img v-show="regData.status == 1" src="~@/assets/image/succ_img.png" alt=""> |
|
|
|
<img v-show="regData.status == 2" src="~@/assets/image/fail_img.png" alt=""> |
|
|
|
<img v-show="regData.status == 0" src="~@/assets/image/fail_img.png" alt=""> |
|
|
|
<img v-show="regData.status == 3" src="~@/assets/image/warn_img.png" alt=""> |
|
|
|
<!-- <img v-show="regData.status == 3" src="~@/assets/image/warn_img.png" alt=""> --> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
@ -67,23 +77,27 @@ |
|
|
|
<div class="mess_box reg_box"> |
|
|
|
<div class="mess_box reg_box"> |
|
|
|
<div class="left_box"> |
|
|
|
<div class="left_box"> |
|
|
|
<div class="acc_text">体检项目</div> |
|
|
|
<div class="acc_text">体检项目</div> |
|
|
|
<div class="acc_txt">{{ regData.project }}</div> |
|
|
|
<div class="acc_txt" v-for="item in regData.resData ? regData.resData.details : []" :key="item">{{ item.project }}</div> |
|
|
|
|
|
|
|
<!-- <div class="acc_txt">{{ regData.resData.details.map(item => item.project) }}</div> --> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="right_box"> |
|
|
|
<div class="right_box"> |
|
|
|
<div class="acc_box"> |
|
|
|
<div class="acc_box"> |
|
|
|
<div class="acc_text">预约时间</div> |
|
|
|
<div class="acc_text">预约时间</div> |
|
|
|
<div class="acc_txt" :class="regData.status == 3 ? 'acc_warn' : ''">{{ regData.time }}</div> |
|
|
|
<div class="acc_txt" v-for="item in regData.resData ? regData.resData.details : []" :key="item">{{regData.resData ? regData.resData.apmDay.substring(0,10) : ''}} {{item.period}}{{item.timeFrame}}</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="btn" v-print="printObj"> |
|
|
|
<div class="btn" v-print="printObj" v-show="regData.resStatus == 1"> |
|
|
|
签到并打印 |
|
|
|
签到并打印 |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
<div class="btn" v-show="regData.resStatus == 0" @click="closeDraw"> |
|
|
|
|
|
|
|
关闭 |
|
|
|
|
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</el-drawer> |
|
|
|
</el-drawer> |
|
|
|
<!-- 打印 --> |
|
|
|
<!-- 打印 --> |
|
|
|
<div style="margin-left:-9999px;"> |
|
|
|
<!-- <div style="margin-left:-9999px;"> |
|
|
|
<div id="pintHtml" class="prin_table" |
|
|
|
<div id="pintHtml" class="prin_table" |
|
|
|
style="font-family: SimSun;font-size:12px;letter-spacing: 2px;line-height:16px;display: inline-block;overflow: hidden;"> |
|
|
|
style="font-family: SimSun;font-size:12px;letter-spacing: 2px;line-height:16px;display: inline-block;overflow: hidden;"> |
|
|
|
<div style="line-height:40px;font-size:22pt;text-align:center;">机动车驾驶人身体条件证明</div> |
|
|
|
<div style="line-height:40px;font-size:22pt;text-align:center;">机动车驾驶人身体条件证明</div> |
|
|
|
@ -291,7 +305,7 @@ |
|
|
|
</tr> |
|
|
|
</tr> |
|
|
|
</table> |
|
|
|
</table> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> --> |
|
|
|
</basic-container> |
|
|
|
</basic-container> |
|
|
|
</template> |
|
|
|
</template> |
|
|
|
|
|
|
|
|
|
|
|
@ -299,7 +313,8 @@ |
|
|
|
import { |
|
|
|
import { |
|
|
|
getList, |
|
|
|
getList, |
|
|
|
queryBookDetail, |
|
|
|
queryBookDetail, |
|
|
|
getStatus |
|
|
|
getStatus, |
|
|
|
|
|
|
|
getSystemTime |
|
|
|
} from "@/api/booklist/booklist"; |
|
|
|
} from "@/api/booklist/booklist"; |
|
|
|
import { mapGetters } from "vuex"; |
|
|
|
import { mapGetters } from "vuex"; |
|
|
|
import print from "vue-print-nb"; |
|
|
|
import print from "vue-print-nb"; |
|
|
|
@ -361,23 +376,22 @@ export default { |
|
|
|
hide: true, |
|
|
|
hide: true, |
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
label: "预约时间", |
|
|
|
label: "预约日期", |
|
|
|
prop: "timeFrame", |
|
|
|
prop: "apmDay", |
|
|
|
html: true, |
|
|
|
html: true, |
|
|
|
formatter: value => { |
|
|
|
formatter: value => { |
|
|
|
return `<div>${value.apmDay.substring(0, 10)}</div>${value.period}${value.timeFrame}` |
|
|
|
return `<div>${value.apmDay.substring(0, 10)}</div>` |
|
|
|
} |
|
|
|
} |
|
|
|
}, |
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
label: "预约时间", |
|
|
|
|
|
|
|
prop: "examDate", |
|
|
|
|
|
|
|
slot:true |
|
|
|
|
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
label: "预约项目", |
|
|
|
label: "预约项目", |
|
|
|
prop: "project", |
|
|
|
prop: "examPro", |
|
|
|
type: "select", |
|
|
|
slot:true |
|
|
|
dicUrl: "/api/blade-system/dict-biz/dictionary?code=hc_project", |
|
|
|
|
|
|
|
props: { |
|
|
|
|
|
|
|
label: "dictValue", |
|
|
|
|
|
|
|
value: "dictValue" |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
search: true |
|
|
|
|
|
|
|
}, |
|
|
|
}, |
|
|
|
{ |
|
|
|
{ |
|
|
|
label: "状态", |
|
|
|
label: "状态", |
|
|
|
@ -387,15 +401,8 @@ export default { |
|
|
|
] |
|
|
|
] |
|
|
|
}, |
|
|
|
}, |
|
|
|
data: [], |
|
|
|
data: [], |
|
|
|
regData: { |
|
|
|
regData: {}, |
|
|
|
status: 3, |
|
|
|
systemTime:'' |
|
|
|
name: '张三', |
|
|
|
|
|
|
|
sex: '男', |
|
|
|
|
|
|
|
cardId: '371322198805052320', |
|
|
|
|
|
|
|
phone: '/', |
|
|
|
|
|
|
|
project: '/', |
|
|
|
|
|
|
|
time: '/' |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
}; |
|
|
|
}; |
|
|
|
}, |
|
|
|
}, |
|
|
|
directives: { |
|
|
|
directives: { |
|
|
|
@ -403,7 +410,7 @@ export default { |
|
|
|
}, |
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
computed: { |
|
|
|
computed: { |
|
|
|
...mapGetters(["userInfo", "permission"]), |
|
|
|
...mapGetters(["userInfo", "permission","systemTime"]), |
|
|
|
permissionList() { |
|
|
|
permissionList() { |
|
|
|
return { |
|
|
|
return { |
|
|
|
addBtn: this.vaildData(this.permission.notice_add, false), |
|
|
|
addBtn: this.vaildData(this.permission.notice_add, false), |
|
|
|
@ -414,35 +421,37 @@ export default { |
|
|
|
}, |
|
|
|
}, |
|
|
|
}, |
|
|
|
}, |
|
|
|
created() { |
|
|
|
created() { |
|
|
|
|
|
|
|
// this.getCard() |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
mounted() { |
|
|
|
|
|
|
|
getSystemTime().then(res =>{ |
|
|
|
|
|
|
|
this.systemTime = res.data.data |
|
|
|
|
|
|
|
}) |
|
|
|
}, |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
methods: { |
|
|
|
|
|
|
|
// 获取身份证后打开弹窗 |
|
|
|
|
|
|
|
getCard(number){ |
|
|
|
|
|
|
|
number = '3702120000618034X'; |
|
|
|
|
|
|
|
this.option.column.find(item => item.label == '身份证号码').searchValue = number |
|
|
|
|
|
|
|
}, |
|
|
|
handleRegister(row) { |
|
|
|
handleRegister(row) { |
|
|
|
console.log(row) |
|
|
|
console.log(row) |
|
|
|
this.isRegister = true |
|
|
|
let ids = [] |
|
|
|
getStatus(row.id).then(res =>{ |
|
|
|
row.details.map(item =>{ |
|
|
|
|
|
|
|
ids.push(item.id) |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
let val = ids.join(','); |
|
|
|
|
|
|
|
getStatus(val).then(res =>{ |
|
|
|
console.log(res) |
|
|
|
console.log(res) |
|
|
|
|
|
|
|
this.regData = res.data.data; |
|
|
|
|
|
|
|
this.isRegister = true |
|
|
|
}) |
|
|
|
}) |
|
|
|
// queryBookDetail(row.id).then(res =>{ |
|
|
|
|
|
|
|
// console.log(res) |
|
|
|
|
|
|
|
// }) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}, |
|
|
|
}, |
|
|
|
beforeOpen(done, type) { |
|
|
|
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(); |
|
|
|
done(); |
|
|
|
}, |
|
|
|
}, |
|
|
|
beforeClose(done) { |
|
|
|
beforeClose(done) { |
|
|
|
// this.parentId = ""; |
|
|
|
|
|
|
|
// const column = this.findObject(this.option.column, "parentId"); |
|
|
|
|
|
|
|
// // column.value = ""; |
|
|
|
|
|
|
|
// column.addDisabled = false; |
|
|
|
|
|
|
|
done(); |
|
|
|
done(); |
|
|
|
}, |
|
|
|
}, |
|
|
|
searchReset() { |
|
|
|
searchReset() { |
|
|
|
@ -468,6 +477,8 @@ export default { |
|
|
|
this.onLoad(this.page, this.query); |
|
|
|
this.onLoad(this.page, this.query); |
|
|
|
}, |
|
|
|
}, |
|
|
|
onLoad(page, params = {}) { |
|
|
|
onLoad(page, params = {}) { |
|
|
|
|
|
|
|
console.log(this.systemTime) |
|
|
|
|
|
|
|
|
|
|
|
this.loading = true; |
|
|
|
this.loading = true; |
|
|
|
const { releaseTimeRange, cupCardNo } = this.query; |
|
|
|
const { releaseTimeRange, cupCardNo } = this.query; |
|
|
|
let values = { |
|
|
|
let values = { |
|
|
|
@ -477,16 +488,16 @@ export default { |
|
|
|
if (releaseTimeRange) { |
|
|
|
if (releaseTimeRange) { |
|
|
|
values = { |
|
|
|
values = { |
|
|
|
...values, |
|
|
|
...values, |
|
|
|
startTime: releaseTimeRange[0], |
|
|
|
startTime: releaseTimeRange, |
|
|
|
endTime: releaseTimeRange[1], |
|
|
|
endTime: releaseTimeRange, |
|
|
|
}; |
|
|
|
}; |
|
|
|
values.releaseTimeRange = null; |
|
|
|
|
|
|
|
} else { |
|
|
|
} else { |
|
|
|
values.startTime = ''; |
|
|
|
values.startTime = ''; |
|
|
|
values.endTime = ''; |
|
|
|
values.endTime = ''; |
|
|
|
} |
|
|
|
} |
|
|
|
values.createDept = this.userInfo.dept_id; |
|
|
|
values.createDept = this.userInfo.dept_id; |
|
|
|
values.cupCardNo = cupCardNo ? cupCardNo : ''; |
|
|
|
values.cupCardNo = cupCardNo ? cupCardNo : ''; |
|
|
|
|
|
|
|
console.log(values) |
|
|
|
this.loading = true; |
|
|
|
this.loading = true; |
|
|
|
getList(page.currentPage, page.pageSize, values).then(res => { |
|
|
|
getList(page.currentPage, page.pageSize, values).then(res => { |
|
|
|
const data = res.data.data; |
|
|
|
const data = res.data.data; |
|
|
|
@ -716,7 +727,9 @@ export default { |
|
|
|
font-family: Microsoft YaHei-Regular, Microsoft YaHei; |
|
|
|
font-family: Microsoft YaHei-Regular, Microsoft YaHei; |
|
|
|
font-weight: 400; |
|
|
|
font-weight: 400; |
|
|
|
color: #FFFFFF; |
|
|
|
color: #FFFFFF; |
|
|
|
|
|
|
|
cursor: pointer; |
|
|
|
margin-top: 50px; |
|
|
|
margin-top: 50px; |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|