Commit c25f6ace authored by 黄奎's avatar 黄奎

代码优化

parent 0b0b0f2e
......@@ -72,7 +72,6 @@
display: table-row;
height: 20px;
}
</style>
<template>
<q-dialog v-model="persistent" content-class="bg-grey-1" persistent transition-show="scale">
......@@ -122,8 +121,8 @@
</q-input>
</template>
<template v-else>
<q-field filled class="q-pr-lg">
 <template v-slot:control>
<q-field filled class="q-pr-lg">
<template v-slot:control>
<el-date-picker type="dates" style="width:100%" v-model="objOption.ClassDateList"
value-format="yyyy-MM-dd" placeholder="开班时间">
</el-date-picker>
......@@ -205,8 +204,8 @@
</div>
<div class="row wrap" style="margin:20px 0;display:none;" v-if="objOption.IsOpenCommission==1">
<div class="col-12">
<q-field filled class="col-6 q-pr-lg q-pb-lg">
 <template v-slot:control>
<q-field filled  class="col-6 q-pr-lg q-pb-lg">
<template v-slot:control>
<el-input placeholder="数值" maxlength="8" ref="CommissionValue" v-model="objOption.CommissionValue"
@keyup.native="checkPrice(objOption,'CommissionValue')" :rules="[val => !!val || '请填写数值']">
<template slot="append">
......@@ -215,7 +214,7 @@
</template>
</el-input>
</template>
 </q-field>
</q-field>
</div>
</div>
<div class="EmpLine_title" style="margin-top:20px">
......@@ -300,7 +299,7 @@
</tr>
</thead>
<tbody v-for="(nItem,nIndex) in DefaultPlanTimeList" :key="nIndex+10000">
<tr v-for="(sItem,sIndex) in nItem.TimeList">
<tr v-for="(sItem,sIndex) in nItem.TimeList" :key="sIndex">
<td :rowspan="nItem.TimeList.length" v-if="sIndex==0" style="position:relative;">
<q-select filled style="width:220px;" stack-label multiple v-model="nItem.DateList" ref="DateList"
:options="checkedDays" :label="objOption.ClassStyle==1?'选择周几':'选择日期'" :dense="false" class="col-6"
......@@ -351,10 +350,8 @@
</tr>
</tbody>
</table>
</template>
<div class="row wrap" style="margin-top:30px;">
<div class="col-6" style="display:none">
<q-select label="课时分钟数" filled stack-label v-model="objOption.ClassHourMinute"
:options="ClassHourMinuteArray" option-value="Id" option-label="Name" :dense="false"
......@@ -690,13 +687,6 @@
if (res.Code == 1) {
var newClassId = res.Data.ClassId
var PlanList = res.Data.ClassPlanList;
// //有上课计划
// if (res.Data && res.Data.ClassPlanList && res.Data.ClassPlanList.length > 0 && this.objOption
// .ClassDateList.length < 2) {
// this.checkPlan(newClassId, PlanList)
// } else {
// this.refreshForm();
// }
this.refreshForm();
} else {
this.$q.notify({
......@@ -882,5 +872,4 @@
}
},
}
</script>
</script>
\ No newline at end of file
......@@ -39,7 +39,6 @@
.div_RowList:hover i {
visibility: visible;
}
</style>
<template>
<div>
......@@ -67,7 +66,7 @@
</tr>
<tr>
<td colspan="2"></td>
<td v-for="(item,index) in FullClassRateList" @click="getColEdit(item,index)">
<td v-for="(item,index) in FullClassRateList" @click="getColEdit(item,index)" :key="index">
<div class="Classdel_Div">
{{item.StartValue}}%
<template v-if="item.StartValue!=item.EndValue">-{{item.EndValue}}%</template>
......@@ -88,7 +87,8 @@
<q-card-actions align="right" class="bg-white">
<q-btn label="取消" size="sm" flat color="grey-10" @click="isShowColEdit=false"
style="font-weight:400 !important" />
<q-btn label="确认" size="sm" @click="editManBan()" color="accent q-px-md" style="font-weight:400 !important" />
<q-btn label="确认" size="sm" @click="editManBan()" color="accent q-px-md"
style="font-weight:400 !important" />
</q-card-actions>
</div>
</q-banner>
......@@ -111,7 +111,8 @@
<q-card-actions align="right" class="bg-white">
<q-btn label="取消" size="sm" flat color="grey-10" @click="isShowBanMenu=false"
style="font-weight:400 !important" />
<q-btn label="确认" size="sm" color="accent q-px-md" style="font-weight:400 !important" @click="addColList()" />
<q-btn label="确认" size="sm" color="accent q-px-md" style="font-weight:400 !important"
@click="addColList()" />
</q-card-actions>
</div>
</q-banner>
......@@ -120,7 +121,7 @@
</td>
</tr>
<template v-for="(item,index) in dataList.List">
<tr>
<tr :key="index">
<td @click="getDataItem(item,index)" rowspan="2" style="width:150px;">
<div class="div_RowList">
{{item.StartValue}}<span v-if="item.StartValue>=0">%</span>
......@@ -151,13 +152,14 @@
</q-popup-proxy>
</td>
<td style="width:150px;">奖励课时费</td>
<td v-for="(subItem,subIndex) in item.FullClassList" @click="getInnerEdit(subItem)">
<td v-for="(subItem,subIndex) in item.FullClassList" @click="getInnerEdit(subItem)" :key="subIndex">
{{subItem.ClassMoney}}
<q-popup-proxy>
<q-banner v-if="isShowInnerEdit">
<div style="width:180px;margin-top:20px;">
<div class="row">
<q-input filled v-model="ComMsg.CommonClassMoney" @keyup.native="checkPrice(ComMsg,'CommonClassMoney')" maxlength="6" class="q-pb-lg">
<q-input filled v-model="ComMsg.CommonClassMoney"
@keyup.native="checkPrice(ComMsg,'CommonClassMoney')" maxlength="6" class="q-pb-lg">
</q-input>
</div>
<q-card-actions align="right" class="bg-white">
......@@ -170,15 +172,16 @@
</td>
<td></td>
</tr>
<tr>
<tr :key="index+10000">
<td>增加带班人数</td>
<td v-for="(subItem,subIndex) in item.FullClassList" @click="getPeopleEdit(subItem)">
<td v-for="(subItem,subIndex) in item.FullClassList" @click="getPeopleEdit(subItem)" :key="subIndex">
{{subItem.PeopelNum}}
<q-popup-proxy>
<q-banner v-if="isShowInnerEdit">
<div style="width:180px;margin-top:20px;">
<div class="row">
<q-input filled v-model="ComMsg.CommonPeople" @keyup.native="checkPrice(ComMsg,'CommonPeople')" maxlength="6" class="q-pb-lg">
<q-input filled v-model="ComMsg.CommonPeople" @keyup.native="checkPrice(ComMsg,'CommonPeople')"
maxlength="6" class="q-pb-lg">
</q-input>
</div>
<q-card-actions align="right" class="bg-white">
......@@ -210,14 +213,15 @@
<q-card-actions align="right" class="bg-white">
<q-btn label="取消" size="sm" flat color="grey-10" @click="isShowAddMenu=false"
style="font-weight:400 !important" />
<q-btn label="确认" size="sm" color="accent q-px-md" style="font-weight:400 !important" @click="addRowList()" />
<q-btn label="确认" size="sm" color="accent q-px-md" style="font-weight:400 !important"
@click="addRowList()" />
</q-card-actions>
</div>
</q-banner>
</q-popup-proxy>
</q-btn>
</td>
<td v-for="(item,index) in FullClassRateList"></td>
<td v-for="(item,index) in FullClassRateList" :key="index"></td>
<td></td>
<td></td>
</tr>
......@@ -643,9 +647,7 @@
}
},
}
</script>
<style lang="sass">
@import url('~assets/css/table.sass')
</style>
</style>
\ No newline at end of file
......@@ -31,7 +31,7 @@
<q-table :pagination="showMsg" :loading="loading" no-data-label="暂无相关数据" selection="multiple" flat
:selected.sync="selectedAll" class="sticky-column-table sticky-header-column-table" separator="none"
style="max-height: 400px" :data="dataList" :columns="columns" row-key="ClassPlanId" hide-bottom>
<template v-slot:top="props">
<template v-slot:top>
<div class="text-caption q-my-lg q-px-md text-grey-6 col">
变更内容 注意:需要对变更的内容进行打钩
</div>
......@@ -53,7 +53,6 @@
{{getClassRoomName(props.row.ClassRoomId)}}
</q-td>
</template>
<template v-slot:body-cell-PlanTimeList="props">
<q-td>
<div v-for="(item,index) in props.row.PlanTimeList" :key="index">
......@@ -589,5 +588,4 @@
},
}
}
</script>
</script>
\ No newline at end of file
......@@ -39,7 +39,6 @@
margin-top: 20px;
width: 300px;
}
</style>
<template>
<q-dialog v-model="persistent" maximized full-height seamless position="right" @hide="closeShenheForm">
......@@ -180,5 +179,4 @@
},
}
}
</script>
</script>
\ No newline at end of file
......@@ -36,21 +36,22 @@
.classProgress {
color: var(--q-color-primary);
}
.classList .q-table__bottom{
height:0;
padding:0;
.classList .q-table__bottom {
height: 0;
padding: 0;
}
</style>
<template>
<div class="page-content classList">
<q-table :pagination="pageMsg" :loading="loading" no-data-label="暂无相关数据" flat
class="sticky-column-table sticky-right-column-table " separator="none" :data="data"
:columns="columns" row-key="name">
<template v-slot:top="props">
<q-table :pagination="pageMsg" :loading="loading" no-data-label="暂无相关数据" flat :data="data" :columns="columns"
class="sticky-column-table sticky-right-column-table " separator="none" row-key="name">
<template v-slot:top>
<div class="col-2 q-table__title">班级信息</div>
<q-space />
<div class="page-option">
<q-btn color="accent" v-if="AuthorityObj.isShowAddBtn" size="sm" class="q-mr-md" icon="add" label="新增班级" @click="EditCourse(null)" />
<q-btn color="accent" v-if="AuthorityObj.isShowAddBtn" size="sm" class="q-mr-md" icon="add" label="新增班级"
@click="EditCourse(null)" />
</div>
</template>
<template v-slot:body-cell-CourseId="props">
......@@ -88,7 +89,7 @@
<th>课程名称</th>
<th>课时数</th>
</tr>
<tr v-for="(sItem,sIndex) in props.row.OtherCourseList" style="border-bottom:1px dashed #d1d1d1;">
<tr v-for="(sItem,sIndex) in props.row.OtherCourseList" style="border-bottom:1px dashed #d1d1d1;" :key="sIndex">
<td>{{sItem.CourseName}}</td>
<td>{{sItem.ClassHours}}</td>
</tr>
......@@ -126,8 +127,7 @@
</q-td>
</template>
<template v-slot:bottom>
<!-- <q-pagination class="full-width justify-end" v-model="msg.pageIndex" color="primary" :max="pageCount"
:input="true" @input="changePage" /> -->
</template>
<template v-slot:body-cell-optioned="props">
<q-td :props="props">
......@@ -191,7 +191,8 @@
</q-td>
</template>
</q-table>
<class-form v-if="isShowClassForm" :save-obj="classObjOption" @getClassFlict="getClassFlict" @close="closeClassSaveForm" @success="refreshPage">
<class-form v-if="isShowClassForm" :save-obj="classObjOption" @getClassFlict="getClassFlict"
@close="closeClassSaveForm" @success="refreshPage">
</class-form>
<classinfo-form v-if="isShowClassInfo" :seting-obj="classObjOption" @close="closeClassSaveForm"
@success="refreshPage">
......@@ -199,24 +200,19 @@
<othercourseForm v-if="IsShowOtherCourse" :seting-obj="classObjOption" @close="closeClassSaveForm"
@success="refreshPage">
</othercourseForm>
<changestatusForm v-if="isShowStatusChange" :seting-obj="classObjOption" @getClassFlict="getClassFlict" @close="closeClassSaveForm"
@success="refreshPage"></changestatusForm>
<changestatusForm v-if="isShowStatusChange" :seting-obj="classObjOption" @getClassFlict="getClassFlict"
@close="closeClassSaveForm" @success="refreshPage"></changestatusForm>
<change-class-form v-if="isShowTiaoke" :seting-obj="classObjOption" @close="closeClassSaveForm"
@success="refreshPage"></change-class-form>
<classconflict-form :ClassId="ClassId" v-if="isShowConflict" @getzk="getzk" @close="closeClassConflictForm"
@success="refreshPage"></classconflict-form>
</div>
</template>
<script>
//获取校区列表
import {
deleteClass,
} from '../../api/school/index';
import classForm from '../../components/course/class-form';
import classinfoForm from '../../components/course/classinfo-form';
import othercourseForm from '../../components/course/othercourse-form';
......@@ -238,7 +234,7 @@
default: null
},
loading: {
type:Boolean,
type: Boolean,
default: null
}
},
......@@ -264,7 +260,7 @@
field: 'SchoolName',
align: 'left',
},
{
{
name: "CourseSubjectName",
label: "所属科目",
field: 'CourseSubjectName',
......@@ -356,19 +352,18 @@
isShowStudentMenu: false, //显示未完成学员名单
isShowApply: false //显示调课申请
},
isShowConflict:false,
ClassId:0
isShowConflict: false,
ClassId: 0
}
},
created() {
this.initAuth();
},
mounted() {
},
mounted() {},
methods: {
//关闭、
closeClassConflictForm(){
this.isShowConflict=false;
closeClassConflictForm() {
this.isShowConflict = false;
},
//显示冲突切换弹窗
getClassFlict(ClassId) {
......@@ -378,7 +373,7 @@
this.ClassId = ClassId;
},
//点击全部重排
getzk(){
getzk() {
this.isShowConflict = false;
this.isShowClassForm = true;
},
......@@ -386,7 +381,7 @@
//初始化权限信息
initAuth() {
if (this.authObj) {
if (this.authObj.isShowAddBtn != null && this.authObj.isShowAddBtn){
if (this.authObj.isShowAddBtn != null && this.authObj.isShowAddBtn) {
this.AuthorityObj.isShowAddBtn = this.authObj.isShowAddBtn;
}
if (this.authObj.isShowDelBtn != null && this.authObj.isShowDelBtn) {
......@@ -542,7 +537,6 @@
CourseId: CouseId
});
},
//调课申请
classApply(item) {
this.classObjOption = item;
......@@ -550,9 +544,7 @@
}
}
}
</script>
<style lang="sass">
@import url('~assets/css/table.sass')
</style>
</style>
\ No newline at end of file
<style>
.classLog {
margin: 0 20px;
padding-bottom:70px;
padding-bottom: 70px;
overflow: auto;
}
......@@ -30,13 +30,12 @@
font-weight: bold;
color: #2D2D2D;
}
</style>
<template>
<div class="classLog" style="margin:0 20px;">
<q-timeline>
<template v-for="(item,index) in dataList">
<q-timeline-entry>
<q-timeline-entry :key="index">
<template v-slot:title>
<div class="classLog_Title">{{item.LogTypeStr}} {{item.CreatHour}}</div>
</template>
......@@ -47,7 +46,7 @@
</template>
</q-timeline>
<q-pagination class="full-width justify-start" v-model="msg.PageIndex" color="primary" :max="pageCount"
:input="true" @input="changePage" />
:input="true" @input="changePage" />
</div>
</template>
<script>
......@@ -60,9 +59,6 @@
type: Object,
default: null
}
},
components: {
},
data() {
return {
......@@ -73,7 +69,7 @@
ClassId: 0
},
dataList: [],
pageCount:0
pageCount: 0
}
},
created() {},
......@@ -103,9 +99,7 @@
}
}
}
</script>
<style lang="sass">
@import url('~assets/css/table.sass')
</style>
</style>
\ No newline at end of file
......@@ -105,7 +105,6 @@
overflow: hidden;
word-break: break-all;
}
</style>
<template>
<div>
......@@ -172,7 +171,6 @@
</template>
<script>
import mateitem from '../course/mateitem';
export default {
props: {
dataList: {
......@@ -182,7 +180,6 @@
},
components: {
mateitem,
},
data() {
return {
......@@ -208,5 +205,4 @@
}
}
};
</script>
</script>
\ No newline at end of file
......@@ -223,7 +223,7 @@
B2BIcon: '', //图标
B2BBackground: '', //背景
CourseEmphasis: [], //课程重点 多选 英文逗号分隔
ContractInfo:'' //合同补充协议
ContractInfo: '' //合同补充协议
},
CourseEmphasis: [], //数据临时存放
optionTitle: "",
......@@ -389,13 +389,8 @@
}
} else {
return string;
}
},
getCategorytree() {
this.TreeCategoryList = [];
var qMsg = {};
......@@ -457,14 +452,12 @@
setTimeout(() => { //Todo 暂时不知道什么原因 偶尔会出现2个 所以加了一个延迟
if (res.Data.CourseEmphasis && res.Data.CourseEmphasis != '') {
this.CourseEmphasis = res.Data.CourseEmphasis.split(",").map(Number)
} else {
this.keynoteList.map((x) => {
this.CourseEmphasis.push(x.Id)
})
}
}, 100)
if (res.Data.StepPriceList && res.Data.StepPriceList.length > 0) {
this.ladderPriceList = res.Data.StepPriceList;
}
......
......@@ -365,5 +365,4 @@
},
}
}
</script>
</script>
\ No newline at end of file
......@@ -497,8 +497,8 @@
</q-banner>
</q-popup-proxy>
</i>
<i v-if="item.IsCanEdit&&isShowBtn" class="iconfont icon-guanbi Less_Close"
style="margin-left:5px;" @click.stop="delInfo(item)"></i>
<i v-if="item.IsCanEdit&&isShowBtn" class="iconfont icon-guanbi Less_Close" style="margin-left:5px;"
@click.stop="delInfo(item)"></i>
</div>
</div>
<div class="calendarInner">
......@@ -564,14 +564,12 @@
{{props.row.GuestName[0]}}</q-avatar><span style="margin-left:5px;">
<template v-if="props.row.IsChaBan==0">{{props.row.GuestName}}</template>
<template v-else><span style="color:red;">{{props.row.GuestName}}</span></template>
  <q-tooltip :offset="[0, 10]" v-if="props.row.IsChaBan==1">
 插班报入 <br />
<q-tooltip :offset="[0, 10]" v-if="props.row.IsChaBan==1">
插班报入 <br />
开始课时:{{props.row.StartClassHours}} <br />
 生效状态:{{props.row.EffectStatusStr}} <br />
 生效时间:{{props.row.EffectTime}} <br />
 <template v-if="props.row.UpOrderId&&props.row.UpOrderId>0">
前置订单:{{props.row.UpOrderId}} <br />
</template>
生效状态:{{props.row.EffectStatusStr}} <br />
生效时间:{{props.row.EffectTime}} <br />
<strong v-if="props.row.UpOrderId&&props.row.UpOrderId>0">前置订单:{{props.row.UpOrderId}}</strong><br />
</q-tooltip>
</span>
</div>
......
......@@ -30,7 +30,7 @@
<div class="plan_Inner" v-if="subItem.GuestList&&subItem.GuestList.length>0">
<div class="plan_LeftTitle">学生名称:</div>
<div class="plan_RightInner">
<span style="margin-right:10px;" v-for="tItem in subItem.GuestList">{{tItem.GuestName}}</span>
<span style="margin-right:10px;" v-for="(tItem,tIndex) in subItem.GuestList" :key="tIndex">{{tItem.GuestName}}</span>
</div>
</div>
<div class="plan_Inner" style="align-items:center;" v-if="subItem.CompleteProgress>=0">
......
......@@ -37,7 +37,6 @@
.noticeInner {
margin-top: 20px;
color: #333333;
/* font-size: 14px; */
line-height: 26px;
display: -webkit-box;
-webkit-line-clamp: 4;
......@@ -57,19 +56,22 @@
background-color: #DFE7FF;
cursor: pointer;
}
.noticeContent .expandName{
font-size:14px;
color:#2961FE;
margin-left:10px;
.noticeContent .expandName {
font-size: 14px;
color: #2961FE;
margin-left: 10px;
cursor: pointer;
}
.noticeContent .noticeNameList{
max-width:680px;
height:20px;
.noticeContent .noticeNameList {
max-width: 680px;
height: 20px;
overflow: hidden;
}
.noticeContent .noticeZhan{
height:auto!important;
.noticeContent .noticeZhan {
height: auto !important;
}
</style>
<template>
......@@ -93,7 +95,7 @@
<div style="display:flex;">
<div class="noticeBlue">To:</div>
<div class="notice_Span noticeNameList" ref="noticeKia" :class="{'noticeZhan':isShowMore}">
<span v-for="(item,index) in dataList[0].toList">
<span v-for="(item,index) in dataList[0].toList" :key="index">
{{item}}
<template v-if="index!=dataList[0].toList.length-1"></template>
</span>
......@@ -108,7 +110,7 @@
<div>
<span class="noticeBlue">Cc:</span>
<span class="notice_Span">
<span v-for="(item,index) in dataList[0].ccList">{{item}}
<span v-for="(item,index) in dataList[0].ccList" :key="index">{{item}}
<template v-if="index!=dataList[0].ccList.length-1"></template>
</span>
</span>
......@@ -125,13 +127,14 @@
</div>
<div class="notice_dix" style="margin-top:20px;">
<div>
<div class="noticeFile" v-if="dataList[0].fileList.length>0" v-for="item in dataList[0].fileList">
<span style="cursor:pointer;">
<a :href="item.FileUrl" style="color:#2961FE;text-decoration:none;" target="_blank">
<i class="iconfont icon-Download"
style="margin-right:5px;"></i>{{item.FileName}}</a>
<template v-if="dataList[0].fileList.length>0">
<div class="noticeFile" v-for="(item,index) in dataList[0].fileList" :key="index">
<span style="cursor:pointer;">
<a :href="item.FileUrl" style="color:#2961FE;text-decoration:none;" target="_blank">
<i class="iconfont icon-Download" style="margin-right:5px;"></i>{{item.FileName}}</a>
</span>
</div>
</div>
</template>
</div>
<div style="margin-top:5px;">
<div class="notice_Page" style="margin-right:10px;">
......@@ -169,8 +172,8 @@
return {
persistent: true,
dataList: [],
isShowMore:false,
isShowBtn:false
isShowMore: false,
isShowBtn: false
}
},
created() {
......@@ -189,10 +192,10 @@
mounted() {
this.$nextTick(() => {
var _width = this.$refs.noticeKia.clientWidth;
if(_width<680){
this.isShowBtn=false;
}else{
this.isShowBtn=true;
if (_width < 680) {
this.isShowBtn = false;
} else {
this.isShowBtn = true;
}
})
},
......@@ -204,21 +207,22 @@
},
//查看详情
goDetail() {
   let routeUrl = this.$router.resolve({
     path: "/noticeView",
     query: {NoticeId:this.dataList[0].Id}
   });
   window.open(routeUrl.href, '_blank');
let routeUrl = this.$router.resolve({
path: "/noticeView",
query: {
NoticeId: this.dataList[0].Id
}
});
window.open(routeUrl.href, '_blank');
},
//往后翻页
goAfter(){
this.$emit('fathergoAfter');
goAfter() {
this.$emit('fathergoAfter');
},
//往前翻
goBefore(){
this.$emit('fathergoBefore');
goBefore() {
this.$emit('fathergoBefore');
}
},
}
</script>
</script>
\ No newline at end of file
......@@ -27,8 +27,6 @@
</q-td>
</template>
<template v-slot:bottom>
<!-- <q-pagination class="full-width justify-end" v-model="msg.pageIndex" color="primary" :max="pageCount"
:input="true" @input="changePage" /> -->
</template>
</q-table>
</q-card-section>
......
......@@ -92,7 +92,6 @@
.TeacherNewClass:last-child {
margin-bottom: 0;
}
</style>
<template>
<div class="page-body">
......@@ -121,14 +120,14 @@
</template>
<template v-slot:body-cell-ClassTime="props">
<q-td auto-width :props="props" style="width:25%">
<div v-for="(item,index) in props.row.TimeList">
<div v-for="(item,index) in props.row.TimeList" :key="index">
{{index+1}}节课 {{item.StartTime}}-{{item.EndTime}}
</div>
</q-td>
</template>
<template v-slot:body-cell-CheckNum="props">
<q-td auto-width :props="props" style="width:25%">
<div v-for="(item,index) in props.row.TimeList">
<div v-for="(item,index) in props.row.TimeList" :key="index">
<span style="color:green;" :class="{'underLine':item.CheckList.length>0}">
{{item.CheckNum}}
<q-popup-proxy v-if="item.CheckList.length>0">
......@@ -145,7 +144,7 @@
</template>
<template v-slot:body-cell-NoCheckNum="props">
<q-td auto-width :props="props" style="width:25%">
<div v-for="(item,index) in props.row.TimeList">
<div v-for="(item,index) in props.row.TimeList" :key="index">
<span style="color:red;" :class="{'underLine':item.NoCheckList.length>0}">
{{item.NoCheckNum}}
<q-popup-proxy v-if="item.NoCheckList.length>0">
......@@ -162,7 +161,7 @@
</template>
<template v-slot:body-cell-AskforleaveNum="props">
<q-td auto-width :props="props" style="width:25%">
<div v-for="(item,index) in props.row.TimeList">
<div v-for="(item,index) in props.row.TimeList" :key="index">
<span style="color:red;" :class="{'underLine':item.AskforleaveList.length>0}">
{{item.AskforleaveNum}}
<q-popup-proxy v-if="item.AskforleaveList.length>0">
......@@ -186,13 +185,13 @@
<template v-else>
<div class="col-10" style="margin-bottom:20px;display:flex;" v-if="dataList&&dataList.length>0">
<div class="col-4" id="timeleft">
<div v-for="item in dataList">
<div v-for="(item,index) in dataList" :key="index">
{{item.YearStr}}-{{item.MonthStr}}-{{item.DayStr}}
</div>
</div>
<div class="col-4" id="timeright"
style="padding-left:25px;margin-left:25px;width:80%;border-left: 1px solid #d1d1d1;">
<div v-for="item in dataList" class="record_List">
<div v-for="(item,index) in dataList" class="record_List" :key="index">
<div class="TeacherNameList">
{{item.TeacherName}}
<li class="cicle1" :class="{'reCordRed':item.ColorType==1,'reCordBlue':item.ColorType==2,
......@@ -201,7 +200,7 @@
</li>
</div>
<div class="TeacherContent">
<div v-for="(subItem,subIndex) in item.TimeList" class="TeacherNewClass">
<div v-for="(subItem,subIndex) in item.TimeList" class="TeacherNewClass" :key="subIndex">
<div>{{subIndex+1}}节课 {{subItem.StartTime}}-{{subItem.EndTime}}</div>
<div style="color:green;margin:0 20px;" title="签到数">签到数:{{subItem.CheckNum}}</div>
<div style="color:red;margin:0 20px;" title="缺勤数">缺勤数:{{subItem.NoCheckNum}}</div>
......@@ -360,9 +359,7 @@
}
}
}
</script>
<style lang="sass">
@import url('~assets/css/table.sass')
</style>
</style>
\ No newline at end of file
This diff is collapsed.
......@@ -39,7 +39,6 @@
.div_RowList:hover i {
visibility: visible;
}
</style>
<template>
<div>
......@@ -67,7 +66,7 @@
</tr>
<tr>
<td colspan="2"></td>
<td v-for="(item,index) in FullClassRateList" @click="getColEdit(item,index)">
<td v-for="(item,index) in FullClassRateList" @click="getColEdit(item,index)" :key="index">
<div class="Classdel_Div">
{{item.StartValue}}%
<template v-if="item.StartValue!=item.EndValue">-{{item.EndValue}}%</template>
......@@ -88,7 +87,8 @@
<q-card-actions align="right" class="bg-white">
<q-btn label="取消" size="sm" flat color="grey-10" @click="isShowColEdit=false"
style="font-weight:400 !important" />
<q-btn label="确认" size="sm" @click="editManBan()" color="accent q-px-md" style="font-weight:400 !important" />
<q-btn label="确认" size="sm" @click="editManBan()" color="accent q-px-md"
style="font-weight:400 !important" />
</q-card-actions>
</div>
</q-banner>
......@@ -111,7 +111,8 @@
<q-card-actions align="right" class="bg-white">
<q-btn label="取消" size="sm" flat color="grey-10" @click="isShowBanMenu=false"
style="font-weight:400 !important" />
<q-btn label="确认" size="sm" color="accent q-px-md" style="font-weight:400 !important" @click="addColList()" />
<q-btn label="确认" size="sm" color="accent q-px-md" style="font-weight:400 !important"
@click="addColList()" />
</q-card-actions>
</div>
</q-banner>
......@@ -120,7 +121,7 @@
</td>
</tr>
<template v-for="(item,index) in dataList.List">
<tr>
<tr :key="index">
<td @click="getDataItem(item,index)" rowspan="2" style="width:150px;">
<div class="div_RowList">
{{item.StartValue}}<span v-if="item.StartValue>=0">%</span>
......@@ -151,13 +152,14 @@
</q-popup-proxy>
</td>
<td style="width:150px;">奖励课时费</td>
<td v-for="(subItem,subIndex) in item.FullClassList" @click="getInnerEdit(subItem)">
<td v-for="(subItem,subIndex) in item.FullClassList" @click="getInnerEdit(subItem)" :key="subIndex">
{{subItem.ClassMoney}}
<q-popup-proxy>
<q-banner v-if="isShowInnerEdit">
<div style="width:180px;margin-top:20px;">
<div class="row">
<q-input filled v-model="ComMsg.CommonClassMoney" @keyup.native="checkPrice(ComMsg,'CommonClassMoney')" maxlength="6" class="q-pb-lg">
<q-input filled v-model="ComMsg.CommonClassMoney"
@keyup.native="checkPrice(ComMsg,'CommonClassMoney')" maxlength="6" class="q-pb-lg">
</q-input>
</div>
<q-card-actions align="right" class="bg-white">
......@@ -170,15 +172,16 @@
</td>
<td></td>
</tr>
<tr>
<tr :key="index+10000">
<td>增加带班人数</td>
<td v-for="(subItem,subIndex) in item.FullClassList" @click="getPeopleEdit(subItem)">
<td v-for="(subItem,subIndex) in item.FullClassList" @click="getPeopleEdit(subItem)" :key="subIndex">
{{subItem.PeopelNum}}
<q-popup-proxy>
<q-banner v-if="isShowInnerEdit">
<div style="width:180px;margin-top:20px;">
<div class="row">
<q-input filled v-model="ComMsg.CommonPeople" class="q-pb-lg" @keyup.native="checkPrice(ComMsg,'CommonPeople')" maxlength="6">
<q-input filled v-model="ComMsg.CommonPeople" class="q-pb-lg"
@keyup.native="checkPrice(ComMsg,'CommonPeople')" maxlength="6">
</q-input>
</div>
<q-card-actions align="right" class="bg-white">
......@@ -200,22 +203,25 @@
<div style="width:250px;">
<div style="margin:10px 0 15px 0;">新增上课率</div>
<q-input filled v-model="addObj.StartValue" class="col-6 q-pb-lg"
:rules="[val => !!val || '请填写最小上课率']" @keyup.native="checkPrice(addObj,'StartValue')" maxlength="6" label="最小上课率">
:rules="[val => !!val || '请填写最小上课率']" @keyup.native="checkPrice(addObj,'StartValue')" maxlength="6"
label="最小上课率">
</q-input>
<q-input filled style="margin-top:10px;" v-model="addObj.EndValue" class="col-6 q-pb-lg"
:rules="[val => !!val || '请填写最大上课率']" @keyup.native="checkPrice(addObj,'EndValue')" maxlength="6" label="最大上课率">
:rules="[val => !!val || '请填写最大上课率']" @keyup.native="checkPrice(addObj,'EndValue')" maxlength="6"
label="最大上课率">
</q-input>
<q-card-actions align="right" class="bg-white">
<q-btn label="取消" size="sm" flat color="grey-10" @click="isShowAddMenu=false"
style="font-weight:400 !important" />
<q-btn label="确认" size="sm" color="accent q-px-md" style="font-weight:400 !important" @click="addRowList()" />
<q-btn label="确认" size="sm" color="accent q-px-md" style="font-weight:400 !important"
@click="addRowList()" />
</q-card-actions>
</div>
</q-banner>
</q-popup-proxy>
</q-btn>
</td>
<td v-for="(item,index) in FullClassRateList"></td>
<td v-for="(item,index) in FullClassRateList" :key="index"></td>
<td></td>
<td></td>
</tr>
......@@ -632,7 +638,6 @@
this.isShowInnerEdit = false;
this.$forceUpdate();
},
//修改带班人数
getPeopleEdit(item) {
this.isShowInnerEdit = true;
......@@ -645,9 +650,7 @@
}
},
}
</script>
<style lang="sass">
@import url('~assets/css/table.sass')
</style>
</style>
\ No newline at end of file
......@@ -18,8 +18,8 @@
color="red" icon="iconfont icon-guanbi1" />
</div>
</div>
<el-upload v-if="objOption.SubjectIcon==''" class="avatar-uploader addDutyMain" action="" :before-upload="uploadFile"
:show-file-list="false">
<el-upload v-if="objOption.SubjectIcon==''" class="avatar-uploader addDutyMain" action=""
:before-upload="uploadFile" :show-file-list="false">
<i class="el-icon-plus avatar-uploader-icon"></i>
</el-upload>
</div>
......@@ -75,15 +75,15 @@
Id: this.saveObj.Id
}).then(res => {
if (res.Code == 1) {
this.objOption.Id = res.Data.Id;
this.objOption.SubjectName = res.Data.SubjectName;
this.objOption.SubjectIcon = res.Data.SubjectIcon;
this.objOption.Id = res.Data.Id;
this.objOption.SubjectName = res.Data.SubjectName;
this.objOption.SubjectIcon = res.Data.SubjectIcon;
}
});
} else {
this.objOption.Id = 0;
this.objOption.SubjectName = '',
this.objOption.SubjectIcon = ''
this.objOption.SubjectIcon = ''
}
},
......@@ -126,7 +126,6 @@
}
}
}
</script>
<style>
.avatar-uploader .el-upload {
......@@ -178,5 +177,4 @@
background-color: rgba(251, 251, 251, 0.9);
margin-top: 26px;
}
</style>
</style>
\ No newline at end of file
......@@ -145,5 +145,4 @@
}
},
}
</script>
</script>
\ No newline at end of file
......@@ -8,8 +8,8 @@
<div class="text-caption q-mb-lg q-px-md text-grey-6">教案信息</div>
<div class="row wrap">
<q-uploader style="display: inline-block;max-height: 320px;max-width: 100%; background-repeat:no-repeat"
max-files="1" hide-upload-btn label="教案"
accept=".doc,.docx,.ppt,.pptx,.xls,.xlsx,.pdf" auto-upload :factory="uploadFile" no-thumbnails>
max-files="1" hide-upload-btn label="教案" accept=".doc,.docx,.ppt,.pptx,.xls,.xlsx,.pdf" auto-upload
:factory="uploadFile" no-thumbnails>
</q-uploader>
</div>
<div class="text-caption q-my-md q-px-xs text-grey-6">附件
......@@ -17,8 +17,8 @@
<div class="text-caption q-my-md q-px-xs text-grey-6" v-if="objOption.SourceUrl!=''">
<a :href="objOption.SourceUrl" :download="objOption.PlanName">{{objOption.PlanName}}</a>
<div class="col-6">
<template v-for="item in tempFileList">
<q-img :src="item" style="height: 140px; max-width: 150px"> </q-img>
<template v-for="(item,index) in tempFileList">
<q-img :src="item" style="height: 140px; max-width: 150px" :key="index"></q-img>
</template>
</div>
</div>
......@@ -147,5 +147,4 @@
}
},
}
</script>
</script>
\ No newline at end of file
......@@ -72,7 +72,6 @@
display: table-row;
height: 20px;
}
</style>
<template>
<q-dialog v-model="persistent" content-class="bg-grey-1" persistent transition-show="scale">
......@@ -116,7 +115,6 @@
<audio v-if="objOption.FileUrl" :src="objOption.FileUrl" controls="controls">
您的浏览器不支持 audio 标签。
</audio>
<!-- <div>{{FileName}}</div> -->
</div>
</div>
</q-card-section>
......@@ -146,11 +144,11 @@
type: Object,
default: null
},
addObj:{
addObj: {
type: Object,
default: null
},
ChapterId:{
ChapterId: {
type: Number,
default: null
}
......@@ -171,7 +169,7 @@
},
optionTitle: "",
saveWordLoading: false,
FileName:''
FileName: ''
}
},
created() {
......@@ -224,10 +222,10 @@
// 文件类型进行判断
let types = ['mp3', 'wma', 'wav', 'amr'];
const isAudio = types.includes(files.type);
if(files&&files.name){
if (files && files.name) {
let flieArr = files.name.split(".");
let fileSuffix = flieArr[flieArr.length - 1];
if(fileSuffix!='mp3'){
if (fileSuffix != 'mp3') {
this.$q.notify({
type: 'negative',
message: `请上传mp3格式文件!`,
......@@ -237,8 +235,8 @@
}
UploadSelfFile('words', files, res => {
if (res.Code == 1) {
this.objOption.FileUrl = res.FileUrl;
this.FileName = res.FileName ? res.FileName : '';
this.objOption.FileUrl = res.FileUrl;
this.FileName = res.FileName ? res.FileName : '';
}
})
}
......@@ -276,9 +274,9 @@
})
return;
}
this.saveWordLoading=true;
this.saveWordLoading = true;
SetCourseWords(this.objOption).then(res => {
this.saveWordLoading=false;
this.saveWordLoading = false;
if (res.Code == 1) {
this.$q.notify({
icon: 'iconfont icon-chenggong',
......@@ -287,12 +285,11 @@
message: '保存成功!',
position: 'top'
})
this.$emit('success',this.ChapterId);
this.$emit('success', this.ChapterId);
this.$emit('close');
}
})
}
}
}
</script>
</script>
\ No newline at end of file
......@@ -139,5 +139,4 @@
}
},
}
</script>
</script>
\ No newline at end of file
......@@ -25,7 +25,6 @@
border: 1px dashed #d9d9d9;
line-height: 120px;
}
</style>
<template>
<q-dialog v-model="persistent" content-class="bg-grey-1" transition-show="scale" transition-hide="scale">
......@@ -54,8 +53,8 @@
:rules="[val => !!val || '请选择分类']" class="col-6 q-pr-lg q-pb-lg" />
</div>
<div class="col-6">
<q-select stack-label v-model="msg.DutyType" :options="msg.DutyCategory==1?dutyTypeList:dutyTypeList2" color="primary" filled label="类型"
option-label="Name" option-value="Id" ref="DutyType" emit-value
<q-select stack-label v-model="msg.DutyType" :options="msg.DutyCategory==1?dutyTypeList:dutyTypeList2"
color="primary" filled label="类型" option-label="Name" option-value="Id" ref="DutyType" emit-value
map-options :rules="[val => !!val || '请选择类型']" />
</div>
</div>
......@@ -75,13 +74,15 @@
<div class="row wrap addDutyUpload">
<div class="col-12">
<div style="display:flex;flex-wrap: wrap;">
<div v-if="msg.ItemImgList&&msg.ItemImgList.length>0" v-for="(item,index) in msg.ItemImgList">
<div class="ItemImgDiv">
<q-img :src="item" spinner-color="white" style="height: 100%;height:100%" />
<q-btn size="7px" @click="deleteItemImg(index)" style="position:absolute;right:-5px;top:-5px;" round
color="red" icon="iconfont icon-guanbi1" />
<template v-if="msg.ItemImgList&&msg.ItemImgList.length>0">
<div v-for="(item,index) in msg.ItemImgList" :key="index">
<div class="ItemImgDiv">
<q-img :src="item" spinner-color="white" style="height: 100%;height:100%" />
<q-btn size="7px" @click="deleteItemImg(index)" style="position:absolute;right:-5px;top:-5px;" round
color="red" icon="iconfont icon-guanbi1" />
</div>
</div>
</div>
</template>
<el-upload class="avatar-uploader addDutyMain" action="" :before-upload="uploadFile"
:show-file-list="false">
<i class="el-icon-plus avatar-uploader-icon"></i>
......@@ -159,9 +160,9 @@
Name: "值班事项"
},
],
dutyTypeList2:[{
Id: 1,
Name: "规则事项"
dutyTypeList2: [{
Id: 1,
Name: "规则事项"
}],
persistent: true,
schoolOptions: [],
......@@ -245,9 +246,9 @@
this.$refs.ItemSchools.validate();
this.$refs.DutyCategory.validate();
this.$refs.DutyType.validate();
if(this.msg.DutyType==2){
if (this.msg.DutyType == 2) {
this.$refs.ItemType.validate();
if(this.$refs.ItemType.hasError){
if (this.$refs.ItemType.hasError) {
return
}
}
......@@ -313,5 +314,4 @@
}
},
}
</script>
</script>
\ No newline at end of file
......@@ -159,5 +159,4 @@
},
},
}
</script>
</script>
\ No newline at end of file
......@@ -16,7 +16,7 @@
<div class="page-content">
<q-table :loading="loading" no-data-label="暂无相关数据" flat class="sticky-column-table" :pagination='qMsg'
separator="none" :data="dataList" :columns="columns" row-key="name">
<template v-slot:top="props">
<template v-slot:top>
<div class="col-2 q-table__title">班次管理</div>
<q-space />
<div class="page-option">
......@@ -200,9 +200,7 @@
},
}
}
</script>
<style lang="sass">
@import url('~assets/css/table.sass')
</style>
</style>
\ No newline at end of file
......@@ -225,13 +225,10 @@
}
}
}
</script>
<style lang="scss" scoped>
.bg-white {
background-color: #ffffff;
}
@import url('~assets/css/table.sass')
</style>
</style>
\ No newline at end of file
......@@ -5,7 +5,6 @@
border-radius: 3px;
overflow: hidden;
}
</style>
<template>
<div class="page-body">
......@@ -181,9 +180,7 @@
},
}
}
</script>
<style lang="sass">
@import url('~assets/css/table.sass')
</style>
</style>
\ No newline at end of file
......@@ -163,7 +163,6 @@
-webkit-box-shadow: -webkit-gradient(linear, 0 0, 0 100%, color-stop(.5, rgba(255, 255, 255, .2)), color-stop(.5, transparent), to(transparent));
background-color: #0ae;
}
</style>
<template>
<q-dialog v-model="persistent" content-class="bg-grey-1" persistent transition-show="scale" transition-hide="scale">
......@@ -412,9 +411,7 @@
},
}
}
</script>
<style lang="sass">
@import url('~assets/css/table.sass')
</style>
</style>
\ No newline at end of file
......@@ -10,14 +10,13 @@
.examForm .q-breadcrumbs__el {
cursor: pointer;
}
</style>
<template>
<div class="page-content examForm">
<q-table :pagination="pageMsg" :loading="loading" selection="multiple" :selected.sync="multipleSelection"
no-data-label="暂无相关数据" flat class="sticky-column-table sticky-right-column-table" separator="none"
:data="dataList" :columns="columns" row-key="PaperId">
<template v-slot:top="props">
<template v-slot:top>
<template v-if="(navList&&navList.length>0)||(multipleSelection&&multipleSelection.length>0)">
<div style="height:38px;display:flex;align-items:center;">
<div v-if="navList&&navList.length>0" style="margin-right:20px;">
......@@ -488,9 +487,7 @@
}
}
}
</script>
<style lang="sass">
@import url('~assets/css/table.sass')
</style>
</style>
\ No newline at end of file
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