update evaluation
This commit is contained in:
parent
093e026352
commit
896d3ee607
9
package-lock.json
generated
9
package-lock.json
generated
@ -9859,6 +9859,15 @@
|
|||||||
"resolved": "http://registry.npm.taobao.org/safer-buffer/download/safer-buffer-2.1.2.tgz",
|
"resolved": "http://registry.npm.taobao.org/safer-buffer/download/safer-buffer-2.1.2.tgz",
|
||||||
"integrity": "sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo="
|
"integrity": "sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo="
|
||||||
},
|
},
|
||||||
|
"sass": {
|
||||||
|
"version": "1.21.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/sass/-/sass-1.21.0.tgz",
|
||||||
|
"integrity": "sha512-67hIIOZZtarbhI2aSgKBPDUgn+VqetduKoD+ZSYeIWg+ksNioTzeX+R2gUdebDoolvKNsQ/GY9NDxctbXluTNA==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"chokidar": "^2.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"sass-loader": {
|
"sass-loader": {
|
||||||
"version": "7.1.0",
|
"version": "7.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-7.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-7.1.0.tgz",
|
||||||
|
@ -1,15 +1,16 @@
|
|||||||
<template>
|
<template>
|
||||||
<div id="user-list">
|
<div id="user-list" v-loading="loadingData">
|
||||||
<a href="##" class="header_nav_right" @click="dialogExportVisible=true">
|
<a href="##" class="header_nav_right" @click="dialogExportVisible=true">
|
||||||
<i class="el-icon-download"></i>导出
|
<i class="el-icon-download"></i>导出
|
||||||
</a>
|
</a>
|
||||||
<div class="search-bar">
|
<div class="search-bar">
|
||||||
<el-form :inline="true" :model="searchModel" class="demo-form-inline">
|
<el-form :inline="true" :model="searchModel" class="demo-form-inline">
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-select v-model="searchModel.first_to_tibet" placeholder="评估结构">
|
<el-select v-model="searchModel.resultType" placeholder="评估结果">
|
||||||
|
<el-option label="所有评估结果" value="-1"></el-option>
|
||||||
<el-option label="没有高反" value="0"></el-option>
|
<el-option label="没有高反" value="0"></el-option>
|
||||||
<el-option label="轻度高反" value="1"></el-option>
|
<el-option label="轻度高反" value="1"></el-option>
|
||||||
<el-option label="中毒高反" value="2"></el-option>
|
<el-option label="中度高反" value="2"></el-option>
|
||||||
<el-option label="高度高反" value="3"></el-option>
|
<el-option label="高度高反" value="3"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@ -21,9 +22,9 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
<div class="float-right">
|
<div class="float-right">
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-select v-model="searchModel.first_to_tibet" placeholder="排序方式">
|
<el-select v-model="searchModel.sort" placeholder="排序方式">
|
||||||
<el-option label="评估时间排序" value=""></el-option>
|
<el-option label="评估时间排序" value="time"></el-option>
|
||||||
<el-option label="评估总分排序" value="1"></el-option>
|
<el-option label="评估总分排序" value="score"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</div>
|
</div>
|
||||||
@ -31,20 +32,16 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="data-list">
|
<div class="data-list">
|
||||||
<el-table
|
<el-table
|
||||||
:data="userList"
|
:data="dataList"
|
||||||
style="width: 100%">
|
style="width: 100%">
|
||||||
<el-table-column
|
<el-table-column prop="create_time" label="自评时间" width="180" />
|
||||||
prop="date"
|
<el-table-column width="100" prop="realname" label="姓名"/>
|
||||||
label="自评时间"
|
<el-table-column prop="headache" label="头痛症状"/>
|
||||||
width="180">
|
<el-table-column prop="gastrointestinal" label="胃肠道症状"/>
|
||||||
</el-table-column>
|
<el-table-column prop="tired" label="疲劳或虚弱"/>
|
||||||
<el-table-column prop="realname" label="姓名"/>
|
<el-table-column prop="dizzy" label="头晕或眩晕"/>
|
||||||
<el-table-column prop="head" label="头痛症状"/>
|
<el-table-column width="90" prop="score" label="总分"/>
|
||||||
<el-table-column prop="head" label="胃肠道症状"/>
|
<el-table-column width="110" prop="result" label="评估结果"/>
|
||||||
<el-table-column prop="head" label="疲劳或虚弱"/>
|
|
||||||
<el-table-column prop="head" label="头晕或眩晕"/>
|
|
||||||
<el-table-column prop="head" label="总分"/>
|
|
||||||
<el-table-column prop="head" label="评估结果"/>
|
|
||||||
</el-table>
|
</el-table>
|
||||||
</div>
|
</div>
|
||||||
<div class="data-page text-right">
|
<div class="data-page text-right">
|
||||||
@ -63,8 +60,8 @@
|
|||||||
<p><b>导出数据</b></p>
|
<p><b>导出数据</b></p>
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-radio-group v-model="exportModel.dataCount">
|
<el-radio-group v-model="exportModel.dataCount">
|
||||||
<el-radio label="current">当前筛选数据(200条)</el-radio>
|
<el-radio label="current">当前筛选数据({{dataList.length}}条)</el-radio>
|
||||||
<el-radio label="all">所有数据(12000条)</el-radio>
|
<el-radio label="all">所有数据({{totalCount}}条)</el-radio>
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<p><b>导出字段</b></p>
|
<p><b>导出字段</b></p>
|
||||||
@ -81,7 +78,7 @@
|
|||||||
</el-checkbox-group>
|
</el-checkbox-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<p>
|
<p>
|
||||||
<b>可选字段</b><br />
|
<b>可选字段</b><br/>
|
||||||
<small>基本信息</small>
|
<small>基本信息</small>
|
||||||
</p>
|
</p>
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
@ -114,12 +111,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
var userObj = {
|
import {evaluationSearch} from './../../service/api'
|
||||||
date: '2019-06-18',
|
|
||||||
open_id: '123123',
|
|
||||||
realname: '张三',
|
|
||||||
head: '无头痛症状'
|
|
||||||
}
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "test_record",
|
name: "test_record",
|
||||||
@ -134,20 +126,25 @@
|
|||||||
format: 'csv'
|
format: 'csv'
|
||||||
},
|
},
|
||||||
searchModel: {
|
searchModel: {
|
||||||
first_to_tibet: '',
|
resultType: '-1',
|
||||||
province: '',
|
name: '',
|
||||||
city: ''
|
sort: 'time',
|
||||||
},
|
},
|
||||||
userList: Array(5).fill(userObj),
|
loadingData: true,
|
||||||
|
dataList: [],
|
||||||
currentPage: 1,
|
currentPage: 1,
|
||||||
totalCount: 401
|
totalCount: 401
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
mounted() {
|
||||||
handleProvinceChange(provinceId) {
|
this.onSearch();
|
||||||
},
|
},
|
||||||
onSearch() {
|
methods: {
|
||||||
|
async onSearch() {
|
||||||
|
let data = await evaluationSearch(this.searchModel);
|
||||||
|
this.dataList = data.list;
|
||||||
|
this.totalCount = data.totalCount;
|
||||||
|
this.loadingData = false;
|
||||||
},
|
},
|
||||||
handleSizeChange() {
|
handleSizeChange() {
|
||||||
|
|
||||||
@ -160,53 +157,70 @@
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="less">
|
<style lang="less">
|
||||||
@color-checkbox:#cccccc;
|
@color-checkbox: #cccccc;
|
||||||
@color-checkbox-checked:#78909C;
|
@color-checkbox-checked: #78909C;
|
||||||
@color-checkbox-inner-checked:#fff;
|
@color-checkbox-inner-checked: #fff;
|
||||||
.header_nav_right{
|
.el-table{
|
||||||
position: absolute;
|
border: solid 1px #ddd;
|
||||||
top:20px;
|
margin-bottom: 20px;
|
||||||
right:20px;
|
|
||||||
color:#333;
|
|
||||||
}
|
}
|
||||||
|
.header_nav_right {
|
||||||
|
position: absolute;
|
||||||
|
top: 20px;
|
||||||
|
right: 20px;
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
|
||||||
.select-sex {
|
.select-sex {
|
||||||
input {
|
input {
|
||||||
width: 90px;
|
width: 90px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.el-checkbox,.el-checkbox__input.is-focus{
|
.el-dialog{
|
||||||
.el-checkbox__inner{
|
width:795px;
|
||||||
|
}
|
||||||
|
.el-checkbox-group{
|
||||||
|
margin-right: -20px;
|
||||||
|
}
|
||||||
|
.el-checkbox{
|
||||||
|
margin-right: 13px;
|
||||||
|
margin-top:10px;
|
||||||
|
}
|
||||||
|
.el-checkbox, .el-checkbox__input.is-focus {
|
||||||
|
.el-checkbox__inner {
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
background-color: @color-checkbox;
|
background-color: @color-checkbox;
|
||||||
border-color: @color-checkbox;
|
border-color: @color-checkbox;
|
||||||
&:after{
|
&:after {
|
||||||
transform: rotate(45deg) scaleY(1);
|
transform: rotate(45deg) scaleY(1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
&.is-checked{
|
&.is-checked {
|
||||||
&.is-bordered{
|
&.is-bordered {
|
||||||
border-color: @color-checkbox-checked;
|
border-color: @color-checkbox-checked;
|
||||||
background: @color-checkbox-checked;
|
background: @color-checkbox-checked;
|
||||||
}
|
}
|
||||||
.el-checkbox__inner{
|
.el-checkbox__inner {
|
||||||
background-color: @color-checkbox-inner-checked;
|
background-color: @color-checkbox-inner-checked;
|
||||||
border-color: @color-checkbox-inner-checked;
|
border-color: @color-checkbox-inner-checked;
|
||||||
color:@color-checkbox-checked;
|
color: @color-checkbox-checked;
|
||||||
&:after{
|
&:after {
|
||||||
border-color:@color-checkbox-checked;
|
border-color: @color-checkbox-checked;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.el-checkbox__label{
|
.el-checkbox__label {
|
||||||
color:@color-checkbox-inner-checked;
|
color: @color-checkbox-inner-checked;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.el-checkbox.is-bordered.el-checkbox--medium,
|
.el-checkbox.is-bordered.el-checkbox--medium,
|
||||||
.el-checkbox.is-bordered+.el-checkbox.is-bordered{
|
.el-checkbox.is-bordered + .el-checkbox.is-bordered {
|
||||||
width: 140px;
|
width: 140px;
|
||||||
margin-left: 0;
|
margin-left: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.user-head-name {
|
.user-head-name {
|
||||||
height: 80px;
|
height: 80px;
|
||||||
&:after {
|
&:after {
|
@ -45,7 +45,7 @@
|
|||||||
|
|
||||||
<script>
|
<script>
|
||||||
import appConfig from "./../../utils/config";
|
import appConfig from "./../../utils/config";
|
||||||
import http from "./../../utils/http";
|
import {adminLogin} from "./../../service/api";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
// components: {YCIcon},
|
// components: {YCIcon},
|
||||||
@ -86,20 +86,18 @@
|
|||||||
this.$refs[formName].validate(async valid => {
|
this.$refs[formName].validate(async valid => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
this.loginLoading = true;
|
this.loginLoading = true;
|
||||||
let data = {code: 0, message: '提交登录数据异常'};
|
let data = {code: 1, message: '提交登录数据异常'};
|
||||||
try {
|
try {
|
||||||
data = await http.post('/user/login', this.ruleForm);
|
data = await adminLogin(this.ruleForm);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
}
|
}
|
||||||
if (data.code == 0) {
|
if (data.code && data.code != 0) {
|
||||||
sessionStorage.setItem(
|
|
||||||
appConfig.userSessionName,
|
|
||||||
this.ruleForm.username
|
|
||||||
);
|
|
||||||
this.$router.push("/");
|
|
||||||
} else {
|
|
||||||
this.loginLoading = false;
|
this.loginLoading = false;
|
||||||
this.$message.error(data.message);
|
this.$message.error(data.message);
|
||||||
|
} else {
|
||||||
|
appConfig.setUserData(data);
|
||||||
|
appConfig.setUserToken(data.token);
|
||||||
|
this.$router.push("/");
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// this.$message.error('请填写正确的登录信息');
|
// this.$message.error('请填写正确的登录信息');
|
||||||
|
@ -20,8 +20,8 @@ export const adminRoutes = [
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/history',
|
path: '/history',
|
||||||
name: 'test_history',
|
name: 'evaluation_history',
|
||||||
component: ()=>import('../pages/test/History'),
|
component: ()=>import('../pages/evaluation/History'),
|
||||||
icon: 'file'
|
icon: 'file'
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
@ -6,6 +6,18 @@ import {
|
|||||||
stringify
|
stringify
|
||||||
} from 'qs';
|
} from 'qs';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用户登录
|
||||||
|
* @param params
|
||||||
|
* @returns {Promise<void>}
|
||||||
|
*/
|
||||||
|
export async function adminLogin(params = {}) {
|
||||||
|
return post(`/admin/login`,params);
|
||||||
|
}
|
||||||
|
export async function evaluationSearch(params = {}) {
|
||||||
|
return get(`/admin/searchEvaluation?${stringify(params)}`);
|
||||||
|
}
|
||||||
|
|
||||||
export async function queryNews(params = {}) {
|
export async function queryNews(params = {}) {
|
||||||
return get(`/news/index?${stringify(params)}`);
|
return get(`/news/index?${stringify(params)}`);
|
||||||
}
|
}
|
||||||
@ -23,6 +35,7 @@ export async function queryComments(params = {}) {
|
|||||||
return get(`/comments/query?${stringify(params)}`);
|
return get(`/comments/query?${stringify(params)}`);
|
||||||
}
|
}
|
||||||
export default {
|
export default {
|
||||||
|
adminLogin,
|
||||||
queryNews,
|
queryNews,
|
||||||
queryHotNews,
|
queryHotNews,
|
||||||
queryComments,
|
queryComments,
|
||||||
|
@ -1,8 +1,26 @@
|
|||||||
|
let currentUserData = null;
|
||||||
export default {
|
export default {
|
||||||
apiUrl:'//home.xiaoyan.me:10086/api/v1',
|
// apiUrl:'//home.xiaoyan.me:10086/api/v1',
|
||||||
// apiUrl:'//127.0.0.1:10086',
|
apiUrl: '//127.0.0.1:8000',
|
||||||
/**
|
/**
|
||||||
* h呵呵呵
|
* h呵呵呵
|
||||||
*/
|
*/
|
||||||
userSessionName:'ms_username',
|
userSessionName: 'ms_username',
|
||||||
|
|
||||||
|
getUserData() {
|
||||||
|
return currentUserData;
|
||||||
|
},
|
||||||
|
setUserData(userData) {
|
||||||
|
currentUserData = userData;
|
||||||
|
sessionStorage.setItem('ms_username',userData.username);
|
||||||
|
|
||||||
|
return true;
|
||||||
|
},
|
||||||
|
getUserToken() {
|
||||||
|
return sessionStorage.getItem('user_token');
|
||||||
|
},
|
||||||
|
setUserToken(token) {
|
||||||
|
sessionStorage.setItem('user_token',token);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
@ -17,10 +17,12 @@ const codeMessage = {
|
|||||||
503: '服务不可用,服务器暂时过载或维护。',
|
503: '服务不可用,服务器暂时过载或维护。',
|
||||||
504: '网关超时。',
|
504: '网关超时。',
|
||||||
};
|
};
|
||||||
|
|
||||||
export function get(api) {
|
export function get(api) {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
|
api += (api.search(/\?/) === -1 ? '?' : '&') + 'token=' + appConfig.getUserToken();
|
||||||
fetch(appConfig.apiUrl + api, {
|
fetch(appConfig.apiUrl + api, {
|
||||||
method: 'GET'
|
method: 'GET',
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
return res.json();
|
return res.json();
|
||||||
}).then(data => {
|
}).then(data => {
|
||||||
@ -30,6 +32,7 @@ export function get(api) {
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 发送post请求
|
* 发送post请求
|
||||||
* @param {string} api
|
* @param {string} api
|
||||||
@ -37,6 +40,7 @@ export function get(api) {
|
|||||||
*/
|
*/
|
||||||
export function post(api, postData) {
|
export function post(api, postData) {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
|
api += (api.search(/\?/) === -1 ? '?' : '&') + 'token=' + appConfig.getUserToken();
|
||||||
let formData = new FormData();
|
let formData = new FormData();
|
||||||
for (var k in postData) {
|
for (var k in postData) {
|
||||||
formData.append(k, postData[k]);
|
formData.append(k, postData[k]);
|
||||||
@ -57,6 +61,7 @@ export function post(api, postData) {
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
get,post
|
get, post
|
||||||
}
|
}
|
@ -15,7 +15,7 @@ export default {
|
|||||||
navs: {
|
navs: {
|
||||||
dashboard: '概览',
|
dashboard: '概览',
|
||||||
user_index: '用户信息',
|
user_index: '用户信息',
|
||||||
test_history: '评估记录',
|
evaluation_history: '评估记录',
|
||||||
category: '分类管理',
|
category: '分类管理',
|
||||||
student: '学生信息',
|
student: '学生信息',
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user