提交 0f208671 编写于 作者: zhentian.jia's avatar zhentian.jia

学情报告 页面搭建 update

上级 8039a3f4
...@@ -157,7 +157,7 @@ const vueFilter = { ...@@ -157,7 +157,7 @@ const vueFilter = {
return '普通用户' return '普通用户'
} }
}, },
joinTraining: (value) => { joinStatus: (value) => {
if(value == "1") { if(value == "1") {
return '是' return '是'
}else { }else {
......
...@@ -344,6 +344,9 @@ export function getBarOption(xAxisData, seriesData) { ...@@ -344,6 +344,9 @@ export function getBarOption(xAxisData, seriesData) {
{ {
type: 'category', type: 'category',
data: xAxisData, data: xAxisData,
axisLabel: {
interval:0
}
// axisTick: { // axisTick: {
// alignWithLabel: true // alignWithLabel: true
// } // }
......
...@@ -4,10 +4,30 @@ ...@@ -4,10 +4,30 @@
<div class="component-content screenSet" id="screenSet"> <div class="component-content screenSet" id="screenSet">
<p class="course-p">地区:{{ region }}</p> <p class="course-p">地区:{{ region }}</p>
<p class="course-p">选择机构:{{ organization }}</p> <p class="course-p">选择机构:{{ organization }}</p>
<div class="course-search"> <el-form class="form-update" ref="serchForm" :model="formData" label-width="100px" style="width:40%;">
<el-input placeholder="查询姓名" v-model="formData.name" class="input-with-select"> <el-form-item label="课程完成状态:">
<el-button class="course-button" type="primary" slot="append" @click="search">查询</el-button> <el-select
</el-input> v-model="formData.status"
size="small"
style="width: 100%;"
placeholder="请选择状态"
>
<el-option
v-for="(item,index) in statusList"
:key="index"
:label="item.label"
:value="item.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="查询姓名: ">
<el-input size="small" placeholder="查询姓名" v-model="formData.name">
</el-input>
</el-form-item>
</el-form>
<div class="form-button">
<el-button @click="search()" type="primary">查询</el-button>
<el-button @click="resetForm()">重置</el-button>
</div> </div>
<el-table <el-table
:data="tableData" :data="tableData"
...@@ -20,24 +40,20 @@ ...@@ -20,24 +40,20 @@
</el-table-column> </el-table-column>
<el-table-column prop="professional" label="职称" align="center"> <el-table-column prop="professional" label="职称" align="center">
</el-table-column> </el-table-column>
<el-table-column prop="post" label="职务" align="center">
</el-table-column>
<el-table-column prop="organization" label="机构" align="center"> <el-table-column prop="organization" label="机构" align="center">
</el-table-column> </el-table-column>
<el-table-column prop="region" label="地区" align="center"> <el-table-column prop="region" label="地区" align="center">
</el-table-column> </el-table-column>
<el-table-column prop="join" label="是否参与培训" align="center"> <el-table-column prop="join" label="参与课程状态" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ scope.row.join | joinTraining }}</span> <span>{{ scope.row.join | joinStatus }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="complete" label="是否完成培训" align="center"> <el-table-column prop="date" label="完成培训日期" align="center" min-width="150">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ scope.row.complete | joinTraining }}</span> <span>{{ scope.row.date | liveDateFilter }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="date" label="完成培训日期" align="center">
</el-table-column>
</el-table> </el-table>
<div class="pagination"> <div class="pagination">
<el-pagination <el-pagination
...@@ -76,13 +92,28 @@ export default { ...@@ -76,13 +92,28 @@ export default {
curmbSecond: "项目管理", curmbSecond: "项目管理",
formData: { formData: {
name: '', name: '',
status: '',
pageNo: 1, pageNo: 1,
pageSize: 10, pageSize: 10,
}, },
region: '浙江省/杭州市/西湖区', region: '',
organization: '杭州市中心医院', organization: '',
tableData: [], tableData: [],
totalRows: 0, totalRows: 0,
statusList: [
{
value: 1,
label: '未参与'
},
{
value: 2,
label: '参与中'
},
{
value: 3,
label: '已完成'
},
]
}; };
}, },
// computed: { // computed: {
...@@ -93,12 +124,18 @@ export default { ...@@ -93,12 +124,18 @@ export default {
created() { created() {
vm = this; vm = this;
// console.log("formInline:", this.formInline); // console.log("formInline:", this.formInline);
this.getUrlData();
this.search(); this.search();
}, },
mounted: function() { mounted: function() {
commonUtil.resizeHeight(); commonUtil.resizeHeight();
}, },
methods: { methods: {
getUrlData() {
let url = window.location.href;
this.region = vm.getUrlSearch(url,"region");
this.organization = vm.getUrlSearch(url,"organization");
},
search() { search() {
console.log(this.formData.name); console.log(this.formData.name);
this.tableData = [{ this.tableData = [{
...@@ -111,9 +148,20 @@ export default { ...@@ -111,9 +148,20 @@ export default {
region: '上海静安区', region: '上海静安区',
join: '1', join: '1',
complete: '1', complete: '1',
date: '2019-10-11', date: 1562144416000,
}]; }];
}, },
resetForm() {
vm.formData = Object.assign(
{},
{
name: '',
status: '',
pageNo: 1,
pageSize: 10,
}
);
},
handleSizeChange(val) { handleSizeChange(val) {
console.log(`每页 ${val} 条`); console.log(`每页 ${val} 条`);
this.formData.pageSize = val; this.formData.pageSize = val;
...@@ -140,13 +188,16 @@ export default { ...@@ -140,13 +188,16 @@ export default {
.course-p { .course-p {
margin: 30px 0 20px 30px; margin: 30px 0 20px 30px;
font-size: 13px; font-size: 13px;
color: #606266;
} }
.course-search { .form-update {
margin: 35px auto; margin: 30px 0px 0px 20px;
width: 800px;
} }
.course-button { .form-button {
color: #fff; width: 45%;
top: -62px;
position: relative;
left: 50%;
} }
} }
} }
......
...@@ -14,8 +14,8 @@ ...@@ -14,8 +14,8 @@
</el-row> </el-row>
</div> </div>
<div class="text"> <div class="text">
<p>地区:浙江省/杭州市/西湖区</p> <p>地区:{{ dialogData.region }}</p>
<p>选择机构:杭州中医院</p> <p>选择机构:{{ dialogData.organization }}</p>
</div> </div>
<el-form class="form-update" ref="serchForm" :model="formInline" label-width="100px" style="width:40%;"> <el-form class="form-update" ref="serchForm" :model="formInline" label-width="100px" style="width:40%;">
<el-form-item label="项目成绩:"> <el-form-item label="项目成绩:">
...@@ -121,6 +121,11 @@ ...@@ -121,6 +121,11 @@
<script> <script>
let vm; let vm;
export default { export default {
props: {
dialogData: {
type: Object
},
},
data() { data() {
return { return {
formInline: { formInline: {
...@@ -164,6 +169,7 @@ export default { ...@@ -164,6 +169,7 @@ export default {
created() { created() {
vm = this; vm = this;
this.search(); this.search();
console.log(vm.dialogData);
}, },
methods: { methods: {
// 将选中行放入数组 // 将选中行放入数组
...@@ -255,7 +261,6 @@ export default { ...@@ -255,7 +261,6 @@ export default {
mathStatus: "", mathStatus: "",
} }
); );
vm.tags = [];
}, },
saveUpdate() { saveUpdate() {
this.dialogVisible = true; this.dialogVisible = true;
......
...@@ -27,7 +27,7 @@ ...@@ -27,7 +27,7 @@
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
@click="checkName(scope.row)" @click="checkName(scope.row)"
type="primary" type="text"
size="small" size="small"
>查看名单</el-button> >查看名单</el-button>
</template> </template>
...@@ -58,7 +58,10 @@ export default { ...@@ -58,7 +58,10 @@ export default {
}, },
activeName: { activeName: {
type: String type: String
} },
dialogData: {
type: Object
},
}, },
data() { data() {
return { return {
...@@ -115,7 +118,8 @@ export default { ...@@ -115,7 +118,8 @@ export default {
}]; }];
}, },
checkName(data) { checkName(data) {
this.$router.push("course-training"); console.log('dialogData',this.dialogData);
this.$router.push("course-training?id="+data.id+"&region="+this.dialogData.region+"&organization="+this.dialogData.organization);
}, },
handleSizeChange(val) { handleSizeChange(val) {
console.log(`每页 ${val} 条`); console.log(`每页 ${val} 条`);
...@@ -140,9 +144,12 @@ export default { ...@@ -140,9 +144,12 @@ export default {
clear: both clear: both
} }
.box-card { .box-card {
width: 240px; width: 32%;
margin-right: 30px; margin-right: 1%;
float: left; float: left;
.title {
text-align: center;
}
.box-content { .box-content {
text-align: center; text-align: center;
height: 40px; height: 40px;
......
...@@ -101,9 +101,9 @@ export default { ...@@ -101,9 +101,9 @@ export default {
}, },
//用户学历分布 //用户学历分布
getEducationData() { getEducationData() {
let data = [22, 50, 350, 80, 95]; let data = [2,22, 50, 350, 80, 95,55];
if (this.updateCrowd == true) { if (this.updateCrowd == true) {
data = [33, 90, 100, 22, 75]; data = [3,33, 90, 100, 22, 75,66];
} }
this.educationDivision(data); this.educationDivision(data);
}, },
...@@ -139,17 +139,13 @@ export default { ...@@ -139,17 +139,13 @@ export default {
}, },
educationDivision(data) { educationDivision(data) {
let myChart = echarts.init(this.$refs.education); let myChart = echarts.init(this.$refs.education);
let legendData = ["博士", "硕士", "本科", "大专", "大专以下"]; let legendData = ["博士后","博士", "硕士", "本科", "大专", "专科以下","其他"];
let colorData = ["#FF9F7F", "#FFDB5C", "#E062AE", "#37A2DA", "#67E0E3"]; let colorData = ["#FF9F7F", "#FFDB5C", "#E062AE", "#37A2DA", "#67E0E3"];
let seriesData = [ let seriesData = [];
{ value: 22, name: "博士" },
{ value: 50, name: "硕士" },
{ value: 350, name: "本科" },
{ value: 80, name: "大专" },
{ value: 95, name: "大专以下" }
];
for (let i = 0; i < data.length; i++) { for (let i = 0; i < data.length; i++) {
seriesData[i] = {};
seriesData[i].value = data[i]; seriesData[i].value = data[i];
seriesData[i].name = legendData[i];
} }
let option = operationData.getPicOption( let option = operationData.getPicOption(
"用户学历分布", "用户学历分布",
...@@ -183,7 +179,7 @@ export default { ...@@ -183,7 +179,7 @@ export default {
ageDivision(data) { ageDivision(data) {
let myChart = echarts.init(this.$refs.age); let myChart = echarts.init(this.$refs.age);
let xAxisData = [ let xAxisData = [
"16-30", "18-30",
"30-40", "30-40",
"40-50", "40-50",
"50-60", "50-60",
......
...@@ -13,12 +13,12 @@ ...@@ -13,12 +13,12 @@
</div> </div>
<div class="table"> <div class="table">
<el-table :data="tableData" style="width: 100%" border> <el-table :data="tableData" style="width: 100%" border>
<el-table-column prop="name" label="考试名" min-width="200" align="center"></el-table-column> <el-table-column prop="name" label="考试名" min-width="150" align="center"></el-table-column>
<el-table-column prop="joinNum" label="参与考试人数" min-width="100" align="center"></el-table-column> <el-table-column prop="joinNum" label="参与考试人数" min-width="100" align="center"></el-table-column>
<el-table-column prop="passNum" label="通过考试人数" min-width="80" align="center"></el-table-column> <el-table-column prop="passNum" label="通过考试人数" min-width="80" align="center"></el-table-column>
<el-table-column prop="goodNum" label="成绩优秀人数" min-width="80" align="center"></el-table-column> <el-table-column prop="goodNum" label="成绩优秀人数" min-width="80" align="center"></el-table-column>
<el-table-column prop="startNum" label="成绩合格人数" min-width="80" align="center"></el-table-column> <el-table-column prop="startNum" label="成绩合格人数" min-width="80" align="center"></el-table-column>
<el-table-column label="操作" fixed="right" align="center" min-width="200"> <el-table-column label="操作" fixed="right" align="center" min-width="100">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button type="text" size="small" @click="go(scope.row)">查看名单</el-button> <el-button type="text" size="small" @click="go(scope.row)">查看名单</el-button>
</template> </template>
...@@ -133,5 +133,9 @@ export default { ...@@ -133,5 +133,9 @@ export default {
.table { .table {
margin-top: 30px; margin-top: 30px;
} }
.box-card {
width: 49%;
margin-right: 1%;
}
} }
</style> </style>
此差异已折叠。
<template> <template>
<div class="name-list"> <div class="name-list">
<el-card class="where"> <bread-crumb :curmbFirst="curmbFirst" :curmbSecond="curmbSecond"></bread-crumb>
<p>地区: {{params.address}}</p> <div class="component-content screenSet" id="screenSet">
<p>选择机构: {{params.pregress}}</p>
<el-row :gutter="20" class="input-box"> <p class="text">地区: {{params.address}}</p>
<el-col :span="12" :offset="6"> <p class="text">选择机构: {{params.pregress}}</p>
<el-input placeholder="查询姓名" v-model="name" class="input-search"> <el-form class="form-update" ref="serchForm" :model="formData" label-width="100px" style="width:40%;">
<el-button slot="append" class="search-btn" type="primary">查询</el-button> <el-form-item label="考试成绩等级:">
<el-select
v-model="formData.rank"
size="small"
style="width: 100%;"
placeholder="请选择考试通过状态"
>
<el-option
v-for="(item,index) in rankList"
:key="index"
:label="item.label"
:value="item.value"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="查询姓名: ">
<el-input size="small" placeholder="查询姓名" v-model="formData.name">
</el-input> </el-input>
</el-col> </el-form-item>
</el-row> </el-form>
</el-card> <div class="form-button">
<el-card> <el-button @click="search()" type="primary">查询</el-button>
<el-button @click="resetForm()">重置</el-button>
</div>
<el-table :data="joinData" style="width: 100%"> <el-table :data="joinData" style="width: 100%">
<el-table-column prop="name" label="姓名" min-width="80" align="center"></el-table-column> <el-table-column prop="name" label="姓名" min-width="80" align="center"></el-table-column>
<el-table-column prop="sex" label="性别" min-width="100" align="center"></el-table-column> <el-table-column prop="sex" label="性别" min-width="100" align="center"></el-table-column>
...@@ -26,101 +45,143 @@ ...@@ -26,101 +45,143 @@
<el-table-column prop="level" label="考试成绩等级" min-width="80" align="center"></el-table-column> <el-table-column prop="level" label="考试成绩等级" min-width="80" align="center"></el-table-column>
<div slot="empty"> <div slot="empty">
<div class="table-empty"> <div class="table-empty">
<img src="../../assets/image/no-content1.png"> <img src="../../assets/image/no-content1.png" />
<p>没有查询到相关结果</p> <p>没有查询到相关结果</p>
</div> </div>
</div> </div>
</el-table> </el-table>
</el-card> <div class="pagination">
<!-- 分页 --> <el-pagination
<div class="pagination"> background
<el-pagination @size-change="handleSizeChange"
background @current-change="handleCurrentChange"
@size-change="handleSizeChange" :current-page="searchParam.pageNo"
@current-change="handleCurrentChange" :page-sizes="[15, 30, 50, 100, 200, 500, 700, 1000, 1500, 2000]"
:current-page="searchParam.pageNo" :page-size="searchParam.pageSize"
:page-sizes="[15, 30, 50, 100, 200, 500, 700, 1000, 1500, 2000]" layout="total, sizes, prev, pager, next, jumper"
:page-size="searchParam.pageSize" :total="totalRows"
layout="total, sizes, prev, pager, next, jumper" ></el-pagination>
:total="totalRows" </div>
></el-pagination>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import BreadCrumb from "../../components/breadcrumb.vue";
let vm = null;
export default { export default {
components: {
BreadCrumb
},
data() { data() {
return { return {
curmbFirst: "学情报告",
curmbSecond: "项目管理",
params: { params: {
address: "浙江省/杭州市/西湖区", address: "浙江省/杭州市/西湖区",
pregress: "杭州市中医院、杭州市第七人民医院" pregress: "杭州市中医院、杭州市第七人民医院"
}, },
name: "", formData: {
joinData: [{ name: '',
name: 'asd', rank: '',
sex: '男', pageNo: 1,
age: 30, pageSize: 10,
title: '主任医师', },
duty: '医生', joinData: [],
pregress: '上海市复旦大学附属华山医院',
region: '上海市徐汇区',
join: '是',
pass: '是',
paddTime: '2019-10-10',
level: '合格'
}],
totalRows: 0, //数据总数 totalRows: 0, //数据总数
searchParam: { searchParam: {
pageNo: 1, //当前是第几页 pageNo: 1, //当前是第几页
pageSize: 20 //页面总数 pageSize: 20 //页面总数
} },
rankList: [
{
value: 1,
label: '不通过'
},
{
value: 2,
label: '合格'
},
{
value: 3,
label: '优秀'
},
{
value: 4,
label: '无成绩'
},
]
}; };
}, },
created() {
vm = this;
vm.search();
},
methods: { methods: {
// 搜索列表 // 搜索列表
search(flag) { search() {
if(flag) vm.searchParam.pageNo = 1 vm.joinData = [
openLoading(vm); {
let params = {}; name: "asd",
vm.GET(url, params).then(res => { sex: "男",
closeLoading(vm); age: 30,
if (res.code == "000000") { title: "主任医师",
} else { duty: "医生",
vm.$message.info(res.message); pregress: "上海市复旦大学附属华山医院",
region: "上海市徐汇区",
join: "是",
pass: "是",
paddTime: 1562144116000,
level: "合格"
} }
}); ];
}, },
// 重置搜索信息 // 重置搜索信息
resetMessage() { resetForm() {
this.selectProgress = { vm.formData = Object.assign(
status: "", {},
name: "" {
}; name: '',
rank: '',
pageNo: 1,
pageSize: 10,
}
);
vm.search(); vm.search();
}, },
// 更改数据显示数量 // 更改数据显示数量
handleSizeChange(val) { handleSizeChange(val) {
console.log(`每页 ${val} 条`); console.log(`每页 ${val} 条`);
vm.searchParam.pageSize = val vm.searchParam.pageSize = val;
vm.search() vm.search();
}, },
// 换页 // 换页
handleCurrentChange(val) { handleCurrentChange(val) {
console.log(`当前页: ${val}`) console.log(`当前页: ${val}`);
vm.searchParam.pageNo = value vm.searchParam.pageNo = value;
vm.search() vm.search();
}, }
} }
}; };
</script> </script>
<style lang='scss' rel='stylesheet/scss'> <style lang='scss' rel='stylesheet/scss'>
.name-list { .name-list {
.where { .component-content{
p { padding: 10px;
line-height: 40px; background: #fff;
.text {
margin: 30px 0 20px 30px;
font-size: 13px;
color: #606266;
}
.form-update {
margin: 30px 0px 0px 20px;
}
.form-button {
width: 45%;
top: -62px;
position: relative;
left: 50%;
} }
.input-box { .input-box {
margin-top: 40px; margin-top: 40px;
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册