一日流程评估详情和计划修改

This commit is contained in:
zhanglipeng
2021-04-09 15:00:10 +08:00
parent 7682ce5795
commit fd6a5bfa6c
11 changed files with 393 additions and 91 deletions

View File

@ -9,6 +9,15 @@ export function listStandard(query) {
})
}
// 查询一日流程标准列表
export function listStandardAssessment(query) {
return request({
url: '/benyi/dayflow/biaozhun/standard/listassessment',
method: 'get',
params: query
})
}
// 查询一日流程标准详细
export function getStandard(sid) {
return request({

View File

@ -463,6 +463,21 @@ export const constantRoutes = [{
component: () =>
import ('@/views/benyi/dayflowassessment/teacher'),
name: 'dayflowassessmentteacher',
meta: {
title: '一日流程评估',
icon: ''
}
}]
},
{
path: '/benyi/dayflowassessments',
component: Layout,
hidden: true,
children: [{
path: 'details/:id(\\d+)',
component: () =>
import ('@/views/benyi/dayflowassessment/details'),
name: 'dayflowassessmentteacherdetails',
meta: {
title: '一日流程评估详情',
icon: ''

View File

@ -0,0 +1,293 @@
<template>
<div class="app-container">
<div class="flex align-center justify-between student-main-title">
<p class="title flex align-center">
<span>班级{{ classFormat(this.classid) }} </span>
<span> 评估对象{{ pgdxFormat(this.pgdx) }} </span>
<span> 评估时间{{ this.createtime }} </span>
<span> 得分{{ this.df }} </span>
</p>
</div>
<el-tabs v-model="activeName" type="card">
<el-tab-pane
v-for="item in detailOptions"
:key="item.id"
:label="item.name"
:name="item.name"
>
<div
class="block"
v-for="itemTask in dayflowtaskList.filter(
(p) => p.detailId == item.id
)"
:key="itemTask.code"
>
<h2 class="block-item-title flex align-center">
{{ itemTask.taskLable }}
</h2>
<div
class="checkbox-content"
v-for="(itemBz, index) in dayflowstandardList.filter(
(p) => p.taskCode == itemTask.code
)"
:key="itemBz.id"
>
<div
class="checkbox-item flex align-center justify-between"
:class="{ line: index !== 0 }"
>
<p class="left-info">
{{ itemBz.standardTitle }}
</p>
<div class="right-number flex align-center justify-end">
<span>分值: {{ itemBz.score }}分</span>
<el-input-number
class="number-input"
v-model="itemBz.mrz"
:precision="2"
:step="0.1"
:max="itemBz.score"
:disabled="true"
></el-input-number>
</div>
</div>
</div>
</div>
</el-tab-pane>
</el-tabs>
</div>
</template>
<script>
import {
listDayflowassessment,
getDayflowassessment,
addDayflowassessment,
} from "@/api/benyi/dayflowassessment";
import { listDayflowtask } from "@/api/benyi/dayflow/dayflowtask";
import { listDetail, getDetail } from "@/api/benyi/dayflow/dayflowmanger";
import { listStandardAssessment } from "@/api/benyi/dayflow/biaozhun/standard";
import { listDept, getDept } from "@/api/system/dept";
import { listClass, getUserList } from "@/api/system/class";
import { listUser } from "@/api/system/user";
export default {
name: "Assessmentstudentdetails",
data() {
return {
id: "",
classid: "",
pgdx: "",
createtime: "",
df: "",
// 遮罩层
loading: false,
// 根据一日流程id查到的名下任务列表
dayflowtaskList: [],
// 根据任务查询到名下标准
dayflowstandardList: [],
//班级
classOptions: [],
//用户
userOptions: [],
//评估对象
pgdxOptions: [],
// 一日流程表格数据
detailOptions: [],
// 查询一日流程标准
queryParams_standard: {
id: undefined,
},
// 查询参数
queryParams: {
parentid: undefined,
name: undefined,
iselement: undefined,
scope: undefined,
sort: undefined,
},
activeName: "早间接待",
};
},
created() {
this.id = this.$route.params && this.$route.params.id;
this.queryParams_standard.id = this.id;
this.getDetail();
this.getClassList();
this.getUserList();
this.getDayFlowList();
this.getTaskList();
},
methods: {
getDetail() {
getDayflowassessment(this.id).then((response) => {
//console.log(response);
this.classid = response.data.classid;
this.pgdx = response.data.pgdx;
this.createtime = response.data.createTime;
this.df = response.data.zzdf;
});
},
/** 查询一日流程列表 */
getDayFlowList() {
listDetail(null).then((response) => {
this.detailOptions = response.rows;
});
},
// 班级字典翻译
classFormat(classid) {
var actions = [];
var datas = this.classOptions;
Object.keys(datas).map((key) => {
if (datas[key].bjbh == "" + classid) {
actions.push(datas[key].bjmc);
return false;
}
});
return actions.join("");
},
/** 查询用户列表 */
getUserList() {
listUser(null).then((response) => {
this.userOptions = response.rows;
});
},
// 教师字典翻译
pgdxFormat(pgdx) {
var actions = [];
var datas = this.userOptions;
Object.keys(datas).map((key) => {
if (datas[key].userId == "" + pgdx) {
actions.push(datas[key].nickName);
return false;
}
});
return actions.join("");
},
//班级列表
getClassList() {
listClass(null).then((response) => {
this.classOptions = response.rows;
});
},
//班级列表
getUserListByBjbh(val) {
getUserList(val).then((response) => {
this.pgdxOptions = response.rows;
});
},
/** 查询一日流程任务列表 */
getTaskList() {
listDayflowtask(null).then((response) => {
this.dayflowtaskList = response.rows;
});
listStandardAssessment(this.queryParams_standard).then((response) => {
this.dayflowstandardList = response.rows;
});
},
},
};
</script>
<style lang="scss" scoped>
// 禁止复制
div {
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.title {
padding: 10px 0;
font-weight: 600;
flex-wrap: wrap;
padding-right: 10px;
line-height: 20px;
span {
font-size: 16px;
padding: 0 4px;
// &:nth-of-type(2) {
// font-size: 14px;
// font-weight: normal;
// }
}
}
.number-input {
width: 120px;
}
.block {
padding: 10px;
color: #333;
.block-item-title {
padding: 10px 0;
margin: 0;
font-size: 16px;
font-weight: 500;
&::before {
content: "";
margin-right: 8px;
width: 4px;
height: 14px;
background: #1890ff;
}
}
.checkbox-item {
padding: 6px 0;
&.line {
border-top: 1px solid #dadada;
}
.left-info {
line-height: 22px;
}
.right-number {
flex: 0 0 205px;
}
}
.block-content {
border-radius: 5px;
padding: 10px;
background: #fcfcfc;
.block-content-title {
font-size: 14px;
font-weight: bold;
line-height: 24px;
padding-bottom: 5px;
.num {
font-size: 16px;
}
}
.checkbox-content {
padding-left: 20px;
margin-bottom: 15px;
}
.checkbox-item {
font-size: 14px;
line-height: 22px;
}
.check-info {
padding-left: 24px;
line-height: 18px;
font-size: 12px;
color: #999;
p {
padding-left: 10px;
}
}
.el-checkbox {
display: flex;
white-space: normal;
.el-checkbox__input {
margin-top: 2px;
}
}
}
}
@media (max-width: 768.98px) {
.title span {
font-size: 12px;
}
}
</style>

View File

@ -319,7 +319,7 @@ export default {
},
handleAssessment(row) {
const id = row.id;
this.$router.push({ path: "/benyi/dayflowassessment/teacher/" + id });
this.$router.push({ path: "/benyi/dayflowassessments/details/" + id });
},
handleAdd() {
this.$router.push({ path: "/benyi/dayflowassessment/teacher" });