This commit is contained in:
parent
5483242ee8
commit
e0a2e4d70e
|
@ -174,7 +174,12 @@ export function GetweekList(params) {
|
|||
** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** */
|
||||
|
||||
|
||||
|
||||
export function GetClassAttendancesByDate(params) {
|
||||
return axios({
|
||||
url: `/api/GetClassAttendancesByDate`,
|
||||
params
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
//获取周次更新数据
|
||||
|
|
|
@ -56,7 +56,7 @@
|
|||
</el-table-column>
|
||||
<el-table-column prop="CollegeName" align="center" label="所在学院">
|
||||
</el-table-column>
|
||||
<el-table-column prop="Type_string" align="center" label="人员类型">
|
||||
<el-table-column prop="Title" align="center" label="职称">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
|
@ -288,7 +288,6 @@ export default {
|
|||
params
|
||||
}).then((res) => {
|
||||
// debugger;
|
||||
|
||||
let data1 = res;
|
||||
if (data1) {
|
||||
|
||||
|
|
|
@ -4,11 +4,15 @@
|
|||
<template>
|
||||
<div>
|
||||
<el-card>
|
||||
<div class="seachbox">
|
||||
<div class="seachbox" style="display: flex;align-items: center;">
|
||||
|
||||
<el-input class="ml-5 seachbox_input" v-model.trim="queryParams.clname" placeholder="请输入班级名称"
|
||||
<el-input class="ml-5 seachbox_input" v-model.trim="queryParams.className" placeholder="请输入班级名称"
|
||||
clearable size="small" />
|
||||
<el-button type="primary" @click="getclassinfoDatainfo(pageobj.pageNum)" class="seachboxadd">
|
||||
<div style="width: 390px;">
|
||||
<el-date-picker v-model="queryParams.Date" value-format="YYYY-MM-DD" type="daterange"
|
||||
range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"/>
|
||||
</div>
|
||||
<el-button type="primary" @click="getclassinfoDatainfo(pageobj.pageNum)" class="seachboxadd" style="margin-left: 10px;">
|
||||
搜索
|
||||
</el-button>
|
||||
|
||||
|
@ -18,22 +22,20 @@
|
|||
<!-- <el-table-column type="selection" width="55" align="center" /> -->
|
||||
<el-table-column prop="ClassName" label="班级名称" align="center">
|
||||
</el-table-column>
|
||||
<el-table-column prop="AttendanceNumber" label="出勤" align="center">
|
||||
<el-table-column prop="AttendanceNumber" label="出勤人次" align="center">
|
||||
</el-table-column>
|
||||
<el-table-column prop="WithOutNumber" align="center" label="缺勤">
|
||||
<el-table-column prop="WithOutNumber" align="center" label="缺勤人次">
|
||||
</el-table-column>
|
||||
<el-table-column prop="WithOutNumber" align="center" label="出勤率">
|
||||
<!-- a = item.AttendanceNumber + item.WithOutNumber;
|
||||
b = ((item.AttendanceNumber / a) * 100).toFixed(2); -->
|
||||
<template #default="scope">
|
||||
<span>{{ (scope.row.AttendanceNumber / (scope.row.AttendanceNumber + scope.row.WithOutNumber) * 100).toFixed(2) == 'NaN' ? '0' : (scope.row.AttendanceNumber / (scope.row.AttendanceNumber + scope.row.WithOutNumber) * 100).toFixed(2) +'%' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" align="center" width="150" fixed="right">
|
||||
<template #default="scope">
|
||||
<!-- <el-row class="rowcenter">
|
||||
<Edit-Button permission="ClassesColumns:Edit" content="编辑"
|
||||
@clicknative="editclassitem(scope.row)"></Edit-Button>
|
||||
<Delete-Button permission="ClassesColumns:Delete" @confirm="delclassitem(scope.row)"
|
||||
content="删除"></Delete-Button>
|
||||
</el-row> -->
|
||||
<el-row class="rowcenter">
|
||||
<Details-Button @clicknative="goSpecifiedPage(scope.row.ClassInfoId)" content="详情"></Details-Button>
|
||||
</el-row>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
|
@ -58,7 +60,7 @@
|
|||
import E from 'wangeditor';
|
||||
import { getDefaultTime } from "@/utils/common.js"
|
||||
import teacherSelect from "@/components/teacherselect.vue";
|
||||
import { GetWeekClassAttendances } from "@/api/atten-information";
|
||||
import { GetClassAttendancesByDate } from "@/api/atten-information";
|
||||
//import { getclassinfoData, getCourseinfoData, delClassinfo, delCourseinfo, getStudentlevel, postClassInfoAddinfo, postClassInfoeditinfo, getClassInfodetail, postCourseInfoAddinfo, postCourseInfoeditinfo, getCourseInfodetail } from "@/api/collegeinformation.js";
|
||||
export default {
|
||||
name: "classandcourse",
|
||||
|
@ -81,7 +83,8 @@ export default {
|
|||
collegeNam: '',
|
||||
|
||||
queryParams: {
|
||||
clname: '',
|
||||
className: '',
|
||||
Date:'',
|
||||
coursename: '',
|
||||
type: 0,
|
||||
},
|
||||
|
@ -171,6 +174,29 @@ export default {
|
|||
|
||||
},
|
||||
methods: {
|
||||
goSpecifiedPage(classinfoid) {
|
||||
//debugger
|
||||
let arg = {
|
||||
collegeId: 1,
|
||||
majorId: 1,
|
||||
classinfoid,
|
||||
month: '',
|
||||
week: '',
|
||||
semester: "",
|
||||
};
|
||||
/* if (this.$route.query.date) {
|
||||
// arg['date'] = this.$route.query.date;
|
||||
arg["startDate"] = this.$route.query.date;
|
||||
arg["endDate"] = this.$route.query.date;
|
||||
} */
|
||||
// this.removesessionContextData("attenClassDetails"); //删除指定session数据
|
||||
this.$router.push({
|
||||
name: "attenClassDetails",
|
||||
query: {
|
||||
...arg,
|
||||
},
|
||||
});
|
||||
},
|
||||
modelteacher() {
|
||||
this.activwshow = 1;
|
||||
this.teachershow = true;
|
||||
|
@ -285,7 +311,6 @@ export default {
|
|||
},
|
||||
editclassitem(info) {
|
||||
//获取修改详情
|
||||
debugger
|
||||
this.isedit1 = true;
|
||||
this.drawerform1 = true;
|
||||
this.getlevecolegelist();//获取学院
|
||||
|
@ -501,7 +526,6 @@ export default {
|
|||
CounselorNum: '',
|
||||
};
|
||||
|
||||
debugger
|
||||
console.log(datas);
|
||||
|
||||
postClassInfoeditinfo(datas).then((res) => {
|
||||
|
@ -809,19 +833,16 @@ export default {
|
|||
|
||||
// 已完成 数据备份table中的信息
|
||||
getclassinfoDatainfo(pageNum) {
|
||||
// debugger
|
||||
this.pageobj.pageNum = pageNum;
|
||||
GetWeekClassAttendances({
|
||||
/* oldTotal: this.pageobj.oldTotal,
|
||||
oldCurrent: this.pageobj.oldCurrent,
|
||||
pageSize: this.pageobj.pageSize,
|
||||
pageNum: pageNum,
|
||||
classname: this.queryParams.clname,
|
||||
majorname: '培训班', */
|
||||
week: 1, // 固定
|
||||
majorId:'1' // 固定
|
||||
GetClassAttendancesByDate({
|
||||
className: this.queryParams.className,
|
||||
StartTime: this.queryParams.Date && this.queryParams.Date.length > 0 ? this.$moment(this.queryParams.Date[0]).format(
|
||||
"YYYY-MM-DD"
|
||||
) : '',
|
||||
EndTime: this.queryParams.Date && this.queryParams.Date.length > 0 ? this.$moment(this.queryParams.Date[1]).format(
|
||||
"YYYY-MM-DD"
|
||||
) : '',
|
||||
}).then((res) => {
|
||||
debugger
|
||||
let data = res;
|
||||
if (data.length > 0) {
|
||||
this.pageobj.Total = data[0].total;
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<el-row style="line-height: 62px; padding: 0 30px">
|
||||
<el-col :span="19">
|
||||
<p class="page_p">
|
||||
<span class="page_p_txt">考勤信息详情 - 课程名称:{{ coursename }}</span>
|
||||
<span class="page_p_txt">考勤信息详情 - 课程名称:{{ coursenameNew }}</span>
|
||||
<!-- <span class="page_p_txt">班级考勤信息详情</span> -->
|
||||
</p>
|
||||
</el-col>
|
||||
|
@ -21,7 +21,7 @@
|
|||
</el-col>
|
||||
</el-row>
|
||||
<el-row style="padding: 0 20px; margin-top: 10px">
|
||||
<el-col :span="4">
|
||||
<!-- <el-col :span="4">
|
||||
<el-select v-model="queryform.collegeId" @change="selectCollege" placeholder="学院名称" filterable disabled>
|
||||
<el-option v-for="item in collegeList" :key="item.name" :label="item.name" :value="item.value" />
|
||||
</el-select>
|
||||
|
@ -31,7 +31,7 @@
|
|||
disabled>
|
||||
<el-option v-for="item in majorList" :key="item.name" :label="item.name" :value="item.value" />
|
||||
</el-select>
|
||||
</el-col>
|
||||
</el-col> -->
|
||||
<el-col :span="4" style="margin-left: 15px">
|
||||
<el-select v-model="queryform.classinfoid" @change="selectClass" placeholder="班级名称" filterable>
|
||||
<el-option v-for="item in classList" :key="item.name" :label="item.name" :value="item.value" />
|
||||
|
@ -39,9 +39,14 @@
|
|||
</el-col>
|
||||
<el-col :span="4" style="margin-left: 15px">
|
||||
<el-select v-model="queryform.courseNum" @change="selectCourse" placeholder="课程" filterable clearable>
|
||||
<el-option v-for="item in courseList" :key="item.name" :label="item.name" :value="item.value" />
|
||||
<el-option v-for="item in courseList" :key="item.value" :label="item.name" :value="item.value" />
|
||||
</el-select>
|
||||
</el-col>
|
||||
<el-col :lg="4" :sm="6" style="margin-left: 15px">
|
||||
<el-date-picker v-model="queryform.timerange" format="YYYY/MM/DD" value-format="YYYY/MM/DD" type="daterange"
|
||||
@change="selecttimerange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期">
|
||||
</el-date-picker>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row style="padding: 0 20px; margin-top: 10px">
|
||||
<!-- <el-col :span="4">
|
||||
|
@ -53,7 +58,7 @@
|
|||
>{{ item.name }}</Option>
|
||||
</el-select>
|
||||
</el-col> -->
|
||||
<el-col :span="4">
|
||||
<!-- <el-col :span="4">
|
||||
<el-select v-model="queryform.monthNum" @change="selectMonth" placeholder="月份">
|
||||
<el-option v-for="item in monthList" :key="item.name" :label="item.name" :value="item.value" />
|
||||
</el-select>
|
||||
|
@ -62,19 +67,15 @@
|
|||
<el-select v-model="queryform.weekNum" @change="selectWeek" placeholder="周次">
|
||||
<el-option v-for="item in weekList" :key="item.name" :label="item.name" :value="item.value" />
|
||||
</el-select>
|
||||
</el-col>
|
||||
<el-col :lg="4" :sm="6" style="margin-left: 15px">
|
||||
<el-date-picker v-model="queryform.timerange" format="YYYY/MM/DD" value-format="YYYY/MM/DD" type="daterange"
|
||||
@change="selecttimerange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期">
|
||||
</el-date-picker>
|
||||
</el-col>
|
||||
</el-col> -->
|
||||
|
||||
</el-row>
|
||||
<el-row style="margin-top: 10px" ref="row">
|
||||
<el-col :span="24" class="padding-left-10">
|
||||
<el-card class="mCard">
|
||||
<h2 class="card_h2">{{ className }}</h2>
|
||||
<!-- <div class="card_txt">专业名称:{{majorname}} 教室名称:西苑校区闻道楼5楼507 日期:2019年12月12日</div> -->
|
||||
<div class="card_txt">专业名称:{{ majorname }}</div>
|
||||
<!-- <div class="card_txt">专业名称:{{ majorname }}</div> -->
|
||||
<el-row>
|
||||
<!-- 左侧 -->
|
||||
<el-col :lg="10" :sm="24">
|
||||
|
@ -262,6 +263,7 @@ export default {
|
|||
ctableLoading: false,
|
||||
editInlineData: [],
|
||||
coursename: "",
|
||||
coursenameNew: "全部课程",
|
||||
coursevalue: "",
|
||||
CourseData: [],
|
||||
isShow: false,
|
||||
|
@ -334,7 +336,7 @@ export default {
|
|||
term = "",
|
||||
month = "",
|
||||
week = "",
|
||||
signal = 2,
|
||||
signal = 1,
|
||||
} = options;
|
||||
// debugger
|
||||
GetClassAbsenceTop10({
|
||||
|
@ -550,18 +552,15 @@ export default {
|
|||
endTime: this.queryform.timerange[1] ? this.queryform.timerange[1] : "",
|
||||
month: this.queryform.monthNum,
|
||||
week: this.queryform.weekNum,
|
||||
Signal: this.queryform.timerange[0] ? 1 : 2,
|
||||
Signal: 1,
|
||||
};
|
||||
|
||||
|
||||
GetClassAbsenceCourceList(params).then((res) => {
|
||||
try {
|
||||
let datas = res;
|
||||
this.courseList = []
|
||||
this.courseList = datas;
|
||||
// this.getAllDatas();
|
||||
} catch (err) {
|
||||
// console.log(err);
|
||||
}
|
||||
})
|
||||
.catch((err) => {
|
||||
this.$message({
|
||||
|
@ -667,11 +666,11 @@ export default {
|
|||
if (this.queryform.monthNum !== "") {
|
||||
units = "month";
|
||||
dateUs = this.queryform.monthNum;
|
||||
signal = 2;
|
||||
signal = 1;
|
||||
} else if (this.queryform.weekNum !== "") {
|
||||
units = "week";
|
||||
dateUs = this.queryform.weekNum;
|
||||
signal = 2;
|
||||
signal = 1;
|
||||
} else if (
|
||||
typeof this.queryform.timerange[0] !== "undefined" &&
|
||||
this.queryform.timerange[0] !== ""
|
||||
|
@ -852,7 +851,7 @@ export default {
|
|||
week: this.queryform.weekNum,
|
||||
month: this.queryform.monthNum,
|
||||
term: this.semesterNum,
|
||||
Signal: 2,
|
||||
Signal: 1,
|
||||
};
|
||||
if (
|
||||
typeof vm.$route.query.startDate !== "undefined" &&
|
||||
|
@ -1309,6 +1308,8 @@ export default {
|
|||
},
|
||||
// 筛选课程
|
||||
selectCourse: debounce(function (params) {
|
||||
const selected = this.courseList.find(option => option.value === params);
|
||||
this.coursenameNew = selected.name
|
||||
// const { value } = params;
|
||||
// this.queryform.courseNum = value;
|
||||
let arg = {
|
||||
|
@ -1355,38 +1356,15 @@ export default {
|
|||
getClassInfo(classinfoid) {
|
||||
// debugger
|
||||
//let url = `api/AttendanceInfo/GetClassAbsenceTotalStatistics`;
|
||||
let params = "";
|
||||
if (this.queryform.monthNum !== "") {
|
||||
params = {
|
||||
var params = {
|
||||
classId: classinfoid,
|
||||
courceId: this.queryform.courseNum || 0,
|
||||
startTime: "",
|
||||
endTime: "",
|
||||
month: this.queryform.monthNum,
|
||||
week: "",
|
||||
Signal: 2,
|
||||
};
|
||||
} else if (this.queryform.weekNum !== "") {
|
||||
params = {
|
||||
classId: classinfoid,
|
||||
courceId: this.queryform.courseNum || 0,
|
||||
startTime: "",
|
||||
endTime: "",
|
||||
month: "",
|
||||
week: this.queryform.weekNum,
|
||||
Signal: 2, //1日2周3月
|
||||
};
|
||||
} else if (typeof this.queryform.timerange[0] !== "undefined") {
|
||||
params = {
|
||||
classId: classinfoid,
|
||||
courceId: this.queryform.courseNum || 0,
|
||||
startTime: this.queryform.timerange[0],
|
||||
endTime: this.queryform.timerange[1],
|
||||
startTime: '',
|
||||
endTime: '',
|
||||
month: "",
|
||||
week: "",
|
||||
Signal: 1,
|
||||
};
|
||||
}
|
||||
|
||||
GetClassAbsenceTotalStatistics(params).then((res) => {
|
||||
let datas = res[0];
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
</el-col> -->
|
||||
</el-row>
|
||||
<el-row ref="row" style="padding: 0 30px" class="selects">
|
||||
<el-col :span="4">
|
||||
<!-- <el-col :span="4">
|
||||
<el-select v-model="collegeId" @change="selectCollege" filterable placeholder="学院名称" disabled>
|
||||
|
||||
<el-option v-for="item in collegeList" :key="item.name" :label="item.name" :value="item.value" />
|
||||
|
@ -27,7 +27,7 @@
|
|||
<el-select v-model="majorId" @change="selectMajor" filterable placeholder="专业名称" disabled>
|
||||
<el-option v-for="item in majorList" :key="item.name" :label="item.name" :value="item.value" />
|
||||
</el-select>
|
||||
</el-col>
|
||||
</el-col> -->
|
||||
<el-col :span="4" style="margin-left: 15px">
|
||||
<el-select v-model="classinfoid" @change="selectClasss" filterable placeholder="班级名称">
|
||||
<el-option v-for="item in classList" :key="item.name" :label="item.name" :value="item.value" />
|
||||
|
|
|
@ -503,6 +503,7 @@ export default {
|
|||
this.glyformItem.TeacherNamenum = data.Name + "-" + data.Number;
|
||||
this.glyformItem.LinkManName = data.Name;//教师
|
||||
this.glyformItem.Number = data.Number;//教师工号
|
||||
this.glyformItem.PhoneNum = data.Phone
|
||||
this.teachershow = false;
|
||||
},
|
||||
getglyinfo(id) {
|
||||
|
|
|
@ -117,7 +117,7 @@
|
|||
<el-drawer v-model="drawerform1" :title="drawerformtitle1" :append-to-body="false">
|
||||
<!-- 新增修改班级左侧框 -->
|
||||
<div class="demo-drawer__content">
|
||||
<el-form label-position="right" ref="ruleForm" :rules="rules" label-width="100px" :model="formItem">
|
||||
<el-form label-position="right" ref="ruleForm" :rules="rules" label-width="120px" :model="formItem">
|
||||
<!-- <el-form-item label="学院名称" prop="collegeId">
|
||||
<el-select v-model="formItem.collegeId" filterable placeholder="请选择学院" @change="classmajorList"
|
||||
:disabled="formItem.collegeId ? true : false">
|
||||
|
@ -151,7 +151,7 @@
|
|||
<el-input v-model.trim="formItem.Counselor" placeholder="新增-单位"
|
||||
autocomplete="off"></el-input>
|
||||
</el-form-item> -->
|
||||
<el-form-item label="培训开始时间" prop="ClassRemark">
|
||||
<el-form-item label="培训开始时间" prop="TrainingStartTime">
|
||||
<el-date-picker
|
||||
v-model="formItem.TrainingStartTime"
|
||||
type="date"
|
||||
|
@ -159,7 +159,7 @@
|
|||
value-format="YYYY-MM-DD"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="培训结束时间" prop="ClassRemark">
|
||||
<el-form-item label="培训结束时间" prop="TrainingEndTime">
|
||||
<el-date-picker
|
||||
v-model="formItem.TrainingEndTime"
|
||||
type="date"
|
||||
|
@ -167,12 +167,12 @@
|
|||
value-format="YYYY-MM-DD"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="老师(校内)" prop="ClassRemark">
|
||||
<el-form-item label="教师" prop="TeacherName">
|
||||
<el-input v-model="formItem.TeacherName" readonly placeholder="请选择教师" @click="modelteacher"
|
||||
autocomplete="off"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="备注" prop="ClassRemark">
|
||||
<el-input v-model.trim="formItem.ClassRemark" placeholder="新增-请输入班主任工号"
|
||||
<el-input v-model.trim="formItem.ClassRemark" placeholder=""
|
||||
autocomplete="off"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
@ -324,6 +324,15 @@ export default {
|
|||
{ required: true, message: '请输入班级名称', trigger: 'blur' },
|
||||
//{ min: 3, max: 5, message: '长度在 3 到 5 个字符', trigger: 'blur' }
|
||||
],
|
||||
TeacherName: [
|
||||
{ required: true, message: '请选择教师', trigger: 'blur' },
|
||||
],
|
||||
TrainingStartTime: [
|
||||
{ required: true, message: '请选择培训开始时间', trigger: 'blur' },
|
||||
],
|
||||
TrainingEndTime: [
|
||||
{ required: true, message: '请选择培训结束时间', trigger: 'blur' },
|
||||
],
|
||||
collegeId: [
|
||||
{ required: true, message: '请选择学院', trigger: 'blur' },
|
||||
//{ min: 3, max: 5, message: '长度在 3 到 5 个字符', trigger: 'blur' }
|
||||
|
@ -476,7 +485,6 @@ export default {
|
|||
},
|
||||
editclassitem(info) {
|
||||
//获取修改详情
|
||||
debugger
|
||||
this.isedit1 = true;
|
||||
this.drawerform1 = true;
|
||||
this.getlevecolegelist();//获取学院
|
||||
|
@ -679,7 +687,7 @@ export default {
|
|||
let datas = {
|
||||
ClassinfoId: this.formItem.ClassInfoId,
|
||||
Name: this.formItem.Name,
|
||||
HeadTeacherNum: this.formItem.HeadTeacherNum,
|
||||
//HeadTeacherNum: this.formItem.HeadTeacherNum,
|
||||
|
||||
TrainingStartTime: this.formItem.TrainingStartTime,
|
||||
TrainingEndTime: this.formItem.TrainingEndTime,
|
||||
|
@ -690,6 +698,8 @@ export default {
|
|||
collegeId:1,
|
||||
MajorId: 1,
|
||||
CounselorNum: '',
|
||||
|
||||
HeadTeacherNum: this.formItem.TeacherNumber
|
||||
};
|
||||
|
||||
debugger
|
||||
|
|
|
@ -633,10 +633,10 @@ export default {
|
|||
event.target.name = "file";
|
||||
vm.$forceUpdate();
|
||||
}).catch((err) => {
|
||||
this.$message({
|
||||
/* this.$message({
|
||||
message: '请求失败!',
|
||||
type: 'error'
|
||||
});
|
||||
}); */
|
||||
});
|
||||
},
|
||||
daortanshows() {
|
||||
|
@ -659,6 +659,7 @@ export default {
|
|||
// debugger;
|
||||
this.formItem.TeacherName = data.Name;//教师
|
||||
this.formItem.TeacherNumber = data.Number;//教师工号
|
||||
this.formItem.TeacherTitle = data.Title
|
||||
this.teachershow = false;
|
||||
},
|
||||
|
||||
|
|
Loading…
Reference in New Issue