Commit 167c2b5f authored by 黄奎's avatar 黄奎

页面修改

parent 20c8cb8c
......@@ -132,9 +132,9 @@ export function GetPaperPage(data) {
}
/**
* 获取试卷分页列表
* @param {JSON参数} data
*/
* 获取试卷分页列表
* @param {JSON参数} data
*/
export function submitApproval(data) {
return request({
url: '/Exam/SubmitApproval',
......@@ -315,8 +315,8 @@ export function getExaminationStudentPage(data) {
}
/** 删除试卷、文件夹
* @param {*} data
*/
* @param {*} data
*/
export function deletePaperInfo(data) {
return request({
url: '/Exam/DeletePaper',
......@@ -579,4 +579,28 @@ export function getTeacherAssessmentById(data) {
method: 'post',
data
})
}
/**
* 新增修改考核表现
* @param {*} data
*/
export function saveTeacherAssessmentInfo(data) {
return request({
url: '/TeacherAssessment/SetTeacherAssessmentInfo',
method: 'post',
data
})
}
/**
* 员工提交建议和意见等
* @param {*} data
*/
export function setTeacherHelp(data) {
return request({
url: '/TeacherAssessment/TeacherSetHelp',
method: 'post',
data
})
}
\ No newline at end of file
<style>
</style>
<template>
<q-dialog v-model="persistent" content-class="bg-grey-1" persistent transition-show="scale">
<q-card style="width: 600px;max-width:900px;" class="CLM-Form">
<q-card-section>
<div class="text-h6">考核评价</div>
</q-card-section>
<q-card-section class="q-pt-none scroll" style="max-height: 70vh">
<div class="row wrap">
<div class="col-12">
<q-select filled stack-label use-input option-value="Id" option-label="Name" v-model="objOption.Behavior"
:options="behaviorList" label="该员工的综合工作表现" :dense="false" class="col-12 q-pr-lg q-pb-lg" emit-value
map-options />
</div>
</div>
<div class="row wrap">
<div class="col-12">
<q-input filled stack-label maxlength="20" :dense="false" v-model="objOption.Advantage"
class="col-12 q-pr-lg q-pb-lg" label="主要优点" />
</div>
</div>
<div class="row wrap">
<div class="col-12">
<q-input filled stack-label maxlength="20" :dense="false" v-model="objOption.ShortComing"
class="col-12 q-pr-lg q-pb-lg" label="主要缺点" />
</div>
</div>
<div class="row wrap">
<div class="col-12">
<q-select filled stack-label use-input option-value="Id" option-label="Name" v-model="objOption.Potential"
:options="potentialList" label="该员工发展潜力" :dense="false" class="col-12 q-pr-lg q-pb-lg" emit-value
map-options />
</div>
</div>
<div class="row wrap" v-if="objOption.Potential=='其他'">
<div class="col-12">
<q-input filled stack-label maxlength="20" :dense="false" v-model="objOption.PotentialOther"
class="col-12 q-pr-lg q-pb-lg" label="其他" />
</div>
</div>
</q-card-section>
<q-separator />
<q-card-actions align="right" class="bg-white">
<q-btn label="取消" flat color="grey-10" style="font-weight:400 !important" @click="closeBehaviorForm" />
<q-btn label="提交" color="accent q-px-md" style="font-weight:400 !important" :loading="saveBehaviorLoading"
@click="saveBehavior">
</q-btn>
</q-card-actions>
</q-card>
</q-dialog>
</template>
<script>
import {
saveTeacherAssessmentInfo,
} from '../../api/teacher/index';
export default {
components: {},
props: {
saveObj: {
type: Object,
default: null
}
},
data() {
return {
persistent: true,
saveBehaviorLoading: false,
behaviorList: [{
Id: "表现最好的员工之一",
Name: "表现最好的员工之一"
},
{
Id: "表现优良",
Name: "表现优良"
},
{
Id: "表现基本满意",
Name: "表现基本满意"
},
{
Id: "尚需若干改进才能达到满意的地步",
Name: "尚需若干改进才能达到满意的地步"
},
{
Id: "需大幅改进才能达到满意的地步",
Name: "需大幅改进才能达到满意的地步"
},
],
potentialList: [{
Id: "潜力很大",
Name: "潜力很大"
},
{
Id: "需再学习改进",
Name: "需再学习改进"
},
{
Id: "尚可",
Name: "尚可"
},
{
Id: "其他",
Name: "其他"
}
],
objOption: {
Id: 0,
Behavior: "",
Advantage: "",
ShortComing: "",
Potential: "",
PotentialOther: ""
},
}
},
created() {
},
mounted() {
this.initData();
},
methods: {
initData() {
this.objOption.Id = this.saveObj.Id;
this.objOption.Behavior = this.saveObj.Behavior;
this.objOption.Advantage = this.saveObj.Advantage;
this.objOption.ShortComing = this.saveObj.ShortComing;
this.objOption.Potential = this.saveObj.Potential;
this.objOption.PotentialOther = this.saveObj.PotentialOther;
},
//关闭弹窗
closeBehaviorForm() {
this.$emit('close')
this.persistent = false
},
//保存信息
saveBehavior() {
this.saveBehaviorLoading = true;
saveTeacherAssessmentInfo(this.objOption).then(res => {
this.saveBehaviorLoading = false;
if (res.Code == 1) {
this.$q.notify({
icon: 'iconfont icon-chenggong',
color: 'accent',
timeout: 2000,
message: '数据保存成功!',
position: 'top'
})
this.$emit('success');
this.$emit('close');
}
});
},
},
}
</script>
\ No newline at end of file
<template>
<q-dialog v-model="persistent" content-class="bg-grey-1" persistent transition-show="scale">
<q-card style="width: 600px;max-width:900px;" class="CLM-Form">
<q-card-section>
<div class="text-h6">员工建议</div>
</q-card-section>
<q-card-section class="q-pt-none scroll" style="max-height: 70vh">
<div class="row wrap">
<div class="col-12">
<q-input filled stack-label maxlength="20" :dense="false" v-model="objOption.Help"
class="col-12 q-pr-lg q-pb-lg" label="您的上级怎样帮助你,将使你未来的工作绩效更高" />
</div>
</div>
<div class="row wrap">
<div class="col-12">
<q-input filled stack-label maxlength="20" :dense="false" v-model="objOption.Suggest"
class="col-12 q-pr-lg q-pb-lg" label="对公司的发展有什么建议" />
</div>
</div>
<div class="row wrap">
<div class="col-12">
<q-input filled stack-label maxlength="20" :dense="false" v-model="objOption.Other"
class="col-12 q-pr-lg q-pb-lg" label="其他意见" />
</div>
</div>
</q-card-section>
<q-separator />
<q-card-actions align="right" class="bg-white">
<q-btn label="取消" flat color="grey-10" style="font-weight:400 !important" @click="closeHelpForm" />
<q-btn label="提交" color="accent q-px-md" style="font-weight:400 !important" :loading="saveHelpLoading" @click="saveHelp">
</q-btn>
</q-card-actions>
</q-card>
</q-dialog>
</template>
<script>
import {
setTeacherHelp
} from '../../api/teacher/index';
export default {
components: {},
props: {
saveObj: {
type: Object,
default: null
}
},
data() {
return {
persistent: true,
saveHelpLoading: false,
objOption: {
Id: 0,
Help: "",
Suggest: "",
Other: "",
},
}
},
created() {
},
mounted() {
this.initData();
},
methods: {
initData() {
this.objOption.Id = this.saveObj.Id;
this.objOption.Help=this.saveObj.Help;
this.objOption.Suggest=this.saveObj.Suggest;
this.objOption.Other=this.saveObj.Other;
},
//关闭弹窗
closeHelpForm() {
this.$emit('close')
this.persistent = false
},
//保存信息
saveHelp() {
this.saveHelpLoading = true;
setTeacherHelp(this.objOption).then(res => {
this.saveHelpLoading = false;
if (res.Code == 1) {
this.$q.notify({
icon: 'iconfont icon-chenggong',
color: 'accent',
timeout: 2000,
message: '数据保存成功!',
position: 'top'
})
this.$emit('success');
this.$emit('close');
}
});
},
},
}
</script>
\ No newline at end of file
......@@ -31,7 +31,12 @@
</template>
<template v-slot:body-cell-OptionId="props">
<q-td :props="props">
<q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" @click="gotoDetail(props.row)" label="详情" />
<q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" @click="showForm(props.row,1)"
label="评价" />
<q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" @click="showForm(props.row,2)"
label="建议" />
<q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" @click="gotoDetail(props.row)"
label="详情" />
</q-td>
</template>
<template v-slot:bottom>
......@@ -39,6 +44,9 @@
:input="true" @input="changePage" />
</template>
</q-table>
<behaviorForm v-if="isShowBehavior" :save-obj="objOption" @close="closeForm" @success="refreshPage">
</behaviorForm>
<helpForm v-if="isShowHelp" :save-obj="objOption" @close="closeForm" @success="refreshPage"></helpForm>
</div>
</div>
</template>
......@@ -46,13 +54,15 @@
import {
queryTeacherAssessmentPage
} from '../../api/teacher/index';
import behaviorForm from "../../components/teacher/behavior-form.vue";
import helpForm from "../../components/teacher/help-form.vue";
export default {
meta: {
title: "教师月度考评"
},
components: {
behaviorForm,
helpForm
},
data() {
return {
......@@ -110,6 +120,8 @@
],
dataList: [],
pageCount: 0,
isShowBehavior: false, //是否显示对员工评价弹窗
isShowHelp: false, //是否显示员工对公司建议弹窗
objOption: null,
}
},
......@@ -155,10 +167,22 @@
},
//跳转到考核详情页面
gotoDetail(item) {
console.log("item",item);
console.log("item", item);
this.OpenNewUrl('/teacher/teacherAssessment', {
Id: item.Id
});
},
showForm(item, showType) {
this.objOption = item;
if (showType == 1) {
this.isShowBehavior = true;
} else if (showType == 2) {
this.isShowHelp = true;
}
},
closeForm() {
this.isShowBehavior = false;
this.isShowHelp = false;
}
}
}
......
......@@ -182,7 +182,6 @@
} from "../../api/users/user";
import {
getTeacherAssessmentById,
setTeacherAssessmentInfo,
} from "../../api/teacher/index";
export default {
meta: {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment