Commit 908d9f56 authored by 吴春's avatar 吴春
parents fd1e3f03 54bad6db
......@@ -18,6 +18,7 @@
"co": "^4.6.0",
"core-js": "^3.6.5",
"cos-js-sdk-v5": "^1.1.5",
"echarts": "^5.1.2",
"element-ui": "^2.14.1",
"html2canvas": "^1.0.0-rc.7",
"js-md5": "^0.7.3",
......@@ -31,7 +32,7 @@
"relation-graph": "^1.0.8",
"v-viewer": "^1.5.1",
"vue-amap": "^0.5.10",
"vue-draggable-resizable": "^1.7.5",
"vue-draggable-resizable": "^1.7.2",
"vue-easytable": "^1.7.2",
"vue-i18n": "^8.0.0",
"vue-inline-svg": "^2.0.0",
......
......@@ -12,8 +12,10 @@ export default {
<style>
@import url('~assets/css/font.css');
@import url('//at.alicdn.com/t/font_2077629_byb6agikplo.css');
@import url('//at.alicdn.com/t/font_2077629_1f7iels6h8w.css');
.q-scrollarea__thumb{
z-index: 999999!important;
}
html,
body,
#q-app {
......
......@@ -30,7 +30,7 @@ export function getSchoolAndRoomNav(data) {
*/
export function getClassRoomTimeList(data) {
return request({
url: '/ClassRoom/GetClassRoomTimeList',
url: '/ClassRoom/GetNewClassRoomTimeList',
method: 'post',
data
})
......
......@@ -151,7 +151,7 @@ export function queryClassLogPageList(data) {
*/
export function GetTeacherPlan(data) {
return request({
url: "/Class/GetTeacherPlan",
url: "/Class/GetNewTeacherPlan",
method: 'post',
data
})
......@@ -191,7 +191,7 @@ export function setLessonComment(data) {
*/
export function updateClassLessPlan(data) {
return request({
url: "/Class/UpdateClassLessPlan",
url: "/Class/GetUpdateClassLessPlanSummary",
method: 'post',
data
})
......
......@@ -203,5 +203,16 @@ export function setSellCommissionSendEmployee(data) {
}
// 获取月度班级收支统计
export function getAllClassNowMonthStatistics(data) {
return request({
url: '/finance/GetAllClassNowMonthStatistics',
method: 'post',
data
});
}
import request from '../../utils/request'
/**
* 获取课程分页列表
* @param {JSON参数} data
*/
export function GetClassPageList(data) {
return request({
url: '/TeacherClass/GetClassPageList',
method: 'post',
data
})
}
/**
* 获取课程分页列表
* @param {JSON参数} data
*/
export function GetClassMonthStatistics(data) {
return request({
url: '/TeacherClass/GetClassMonthStatistics',
method: 'post',
data
})
}
......@@ -111,3 +111,62 @@ export function getEmployeeAddrBook(data)
data
})
}
/**
* 获取个人中心信息
*/
export function getUserCenterInfo(data)
{
return request({
url: '/UserInfo/GetUserCenterInfo',
method: 'post',
data
})
}
/**
* 获取我的提成折线图
*/
export function getUserSellCommission(data)
{
return request({
url: '/UserInfo/GetUserSellCommission',
method: 'post',
data
})
}
/**
* 获取我的奖金折线图
*/
export function getTeacherSellCommission(data)
{
return request({
url: '/UserInfo/GetTeacherSellCommission',
method: 'post',
data
})
}
/**
* 个人中心 我的奖金确认
*/
export function updateSureTeachingBonusDetail(data)
{
return request({
url: '/UserInfo/UpdateSureTeachingBonusDetail',
method: 'post',
data
})
}
/**
* 个人中心 我的提成确认
*/
export function updatSureSellCommission(data)
{
return request({
url: '/UserInfo/UpdatSureSellCommission',
method: 'post',
data
})
}
\ No newline at end of file
This diff is collapsed.
......@@ -201,7 +201,7 @@
 </q-field>
</div>
</div>
<div class="EmpLine_title" style="margin:10px 0;">
<div class="EmpLine_title" style="margin-top:20px">
<div class="Emp_Line"></div>
<div>上课设置</div>
</div>
......@@ -269,6 +269,9 @@
<th colspan="2">
时间
</th>
<th>
消耗课时
</th>
<th>
操作
</th>
......@@ -284,12 +287,42 @@
<a @click="deletePlan(nIndex)" style="color:blue;cursor:pointer;position:absolute;">删除</a>
</td>
<td>
<q-input filled stack-label maxlength="20" v-model="sItem.StartTime" placeholder="08:30"
:dense="false" class="col-6 q-pr-lg" label="开始时间" />
<q-input filled v-model="sItem.StartTime" class="col-6 q-pl-lg" placeholder="开始时间" mask="time">
<template v-slot:append>
<q-icon name="access_time" class="cursor-pointer">
<q-popup-proxy transition-show="scale" transition-hide="scale">
<q-time v-model="sItem.StartTime">
<div class="row items-center justify-end">
<q-btn v-close-popup label="确定" color="primary" flat />
</div>
</q-time>
</q-popup-proxy>
</q-icon>
</template>
</q-input>
<!-- <q-input filled stack-label maxlength="20" v-model="sItem.StartTime" placeholder="08:30"
:dense="false" class="col-6 q-pr-lg" label="开始时间" /> -->
</td>
<td>
<q-input filled v-model="sItem.EndTime" class="col-6 q-pr-lg" placeholder="结束时间" mask="time">
<template v-slot:append>
<q-icon name="access_time" class="cursor-pointer">
<q-popup-proxy transition-show="scale" transition-hide="scale">
<q-time v-model="sItem.EndTime">
<div class="row items-center justify-end">
<q-btn v-close-popup label="确定" color="primary" flat />
</div>
</q-time>
</q-popup-proxy>
</q-icon>
</template>
</q-input>
<!-- <q-input filled stack-label maxlength="20" v-model="sItem.EndTime" placeholder="09:30" :dense="false"
class="col-6 q-pr-lg" label="结束时间" /> -->
</td>
<td>
<q-input filled stack-label maxlength="20" v-model="sItem.EndTime" placeholder="09:30" :dense="false"
class="col-6 q-pr-lg" label="结束时间" />
<q-input filled stack-label maxlength="20" v-model="sItem.TimeHour"
@keyup.native="checkPrice(sItem,'TimeHour')" :dense="false" class="col-6 q-pr-lg" label="消耗课时" />
</td>
<td>
<q-btn size="10px" v-if="sIndex==0" @click="addPlanTime(nItem)" round color="primary"
......@@ -314,9 +347,9 @@
</q-select>
</div>
</div>
<div class="row wrap" style="margin-top:30px;">
<div class="row wrap">
<div class="col-12">
<q-input filled stack-label maxlength="2000" v-model="objOption.InnerRemark" :dense="false"
<q-input filled type="textarea" :rows="3" stack-label maxlength="2000" v-model="objOption.InnerRemark" :dense="false"
class="col-12 q-pr-lg q-pb-lg" label="对内备注" />
</div>
</div>
......
......@@ -90,13 +90,13 @@
<q-tab :ripple="false" name="fourth" label="班级日志" />
</q-tabs>
<div v-if="tabCheck=='first'" style="margin:0 15px;">
 <classstuForm :seting-obj="setingObj"></classstuForm>
 <classstuForm :seting-obj="setingObj" :isShowMyBtn="isShowMyBtn"></classstuForm>
</div>
<div v-if="tabCheck=='second'">
 <lessForm :seting-obj="setingObj"></lessForm>
 <lessForm :seting-obj="setingObj" :isShowMyBtn="isShowMyBtn"></lessForm>
</div>
<div v-if="tabCheck=='third'">
<recordForm :seting-obj="setingObj"></recordForm>
<recordForm :seting-obj="setingObj" :isShowMyBtn="isShowMyBtn"></recordForm>
</div>
<div v-if="tabCheck=='fourth'">
<classlogForm :seting-obj="setingObj"></classlogForm>
......@@ -122,6 +122,10 @@
setingObj: {
type: Object,
default: null
},
isShowEditBtn:{
type: Number,
default: null
}
},
components: {
......@@ -136,6 +140,7 @@
tabCheck: 'first', //默认选第一个
loading: false,
classObj:{},
isShowMyBtn:0
}
},
created() {
......@@ -151,6 +156,10 @@
},
mounted() {
// this.queryClassInfo();
console.log(this.isShowEditBtn,'this.isShowEditBtn');
if(this.isShowEditBtn==1){
this.isShowMyBtn=1
}
},
methods: {
queryClassInfo() {
......
<template>
<div>
<div style="text-align:right;">
<template v-if="isShowBtn">
<q-btn outline color="black" label="退课" @click="dropClass()" size="12px" style="margin-right:20px;">
<q-popup-proxy>
<q-banner v-if="isShowDropPop">
......@@ -52,6 +53,7 @@
</q-banner>
</q-popup-proxy>
</q-btn>
</template>
</div>
<q-table :loading="loading" no-data-label="暂无相关数据" style="margin-bottom:80px;" flat selection="multiple"
:selected.sync="selectedStudent" class="sticky-column-table" separator="none" title="学员信息" :data="studentList"
......@@ -59,7 +61,11 @@
<template v-slot:body-cell-IsRenew="props">
<q-td auto-width :props="props">
<span style="color:red;" v-if="props.row.IsRenew==0"></span>
<span style="color:green;" v-if="props.row.IsRenew==1"></span>
<span style="color:green;" v-if="props.row.IsRenew==1">
<q-tooltip :offset="[10, 10]">
原订单:{{props.row.RenewOrderId}}
</q-tooltip>
</span>
</q-td>
</template>
<template v-slot:body-cell-GuestName="props">
......@@ -104,6 +110,10 @@
setingObj: {
type: Object,
default: null
},
isShowMyBtn: {
type: Number,
default: null
}
},
data() {
......@@ -162,7 +172,7 @@
},
{
name: 'IsRenew',
label: '续费课程',
label: '续费订单',
field: 'IsRenew',
align: 'left'
}
......@@ -191,12 +201,16 @@
InvitationList: [], //学员下拉数据
AllInvitationList: [],
checkedStudent: '', //选择学员
isShowBtn:true
}
},
created() {
},
mounted() {
if(this.isShowMyBtn==1){
this.isShowBtn=false;
}
this.getStudentData();
this.getStudentList();
},
......
......@@ -39,7 +39,7 @@
margin-left: -7px;
align-items: center;
transform: scale(0.9);
height:24px;
height: 24px;
}
.lesson_Form .calendarInner {
......@@ -71,7 +71,7 @@
}
.calenderDialog {
width: 300px;
width: 450px;
height: auto;
}
......@@ -199,7 +199,7 @@
</el-radio-group>
</div>
<div>
<q-btn color="accent" size="sm" class="q-mr-md" icon="add" label="新增日程" @click="addNew()">
<q-btn color="accent" size="sm" class="q-mr-md" icon="add" label="新增日程" v-if="isShowBtn" @click="addNew()">
<q-popup-proxy>
<q-banner v-if="isShowMenu">
<div class="calenderDialog">
......@@ -226,7 +226,7 @@
<q-btn @click="addStep()" size="10px" round color="primary" icon="iconfont icon-img_haha" />
</div>
<div class="row wrap" style="position:relative;" v-for="(subItem,subIndex) in addMsg.PlanTimeList">
<div class="col-6">
<div class="col-4">
<q-input filled v-model="subItem.StartTime" class="col-6 q-pr-lg q-pb-lg" mask="time">
<template v-slot:append>
<q-icon name="access_time" class="cursor-pointer">
......@@ -241,7 +241,7 @@
</template>
</q-input>
</div>
<div class="col-6">
<div class="col-4">
<q-input filled v-model="subItem.EndTime" class="col-6 q-pr-lg q-pb-lg" mask="time">
<template v-slot:append>
<q-icon name="access_time" class="cursor-pointer">
......@@ -256,6 +256,11 @@
</template>
</q-input>
</div>
<div class="col-4">
<q-input filled stack-label maxlength="10" :dense="false" v-model="subItem.TimeHour"
ref="TimeHour" class="col-4 q-pr-lg q-pb-lg" label="消耗课时"
:rules="[val => !!val || '请填写消耗课时']" @keyup.native="checkPrice(subItem,'TimeHour')" />
</div>
<div class="delBtnStyle">
<i @click="delStep(subIndex)" class="iconfont icon-guanbi"></i>
</div>
......@@ -305,7 +310,7 @@
</template>
<template v-slot:body-cell-optioned="props">
<q-td :props="props" style="width:130px;">
<q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" label="编辑"
<q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400;display:none;" label="编辑"
@click="getInfo(props.row)">
<q-popup-proxy>
<q-banner v-if="isShowEdit">
......@@ -334,7 +339,7 @@
</div>
<div class="row wrap" style="position:relative;"
v-for="(subItem,subIndex) in addMsg.PlanTimeList">
<div class="col-6">
<div class="col-4">
<q-input filled v-model="subItem.StartTime" class="col-6 q-pr-lg q-pb-lg" mask="time">
<template v-slot:append>
<q-icon name="access_time" class="cursor-pointer">
......@@ -349,7 +354,7 @@
</template>
</q-input>
</div>
<div class="col-6">
<div class="col-4">
<q-input filled v-model="subItem.EndTime" class="col-6 q-pr-lg q-pb-lg" mask="time">
<template v-slot:append>
<q-icon name="access_time" class="cursor-pointer">
......@@ -364,6 +369,11 @@
</template>
</q-input>
</div>
<div class="col-4">
<q-input filled stack-label maxlength="10" :dense="false" v-model="subItem.TimeHour"
ref="TimeHour" class="col-4 q-pr-lg q-pb-lg" label="消耗课时"
:rules="[val => !!val || '请填写消耗课时']" @keyup.native="checkPrice(subItem,'TimeHour')" />
</div>
<div class="delBtnStyle">
<i @click="delStep(subIndex)" class="iconfont icon-guanbi"></i>
</div>
......@@ -400,7 +410,7 @@
<div class="calendarTop">
<div>{{item.RoomName}}</div>
<div>
<i class="iconfont icon-edit Lessicon_Edit" @click.stop="getInfo(item)">
<i class="iconfont icon-edit Lessicon_Edit" style="display:none;" @click.stop="getInfo(item)">
<q-popup-proxy>
<q-banner v-if="isShowEdit">
<div class="calenderDialog">
......@@ -429,7 +439,7 @@
</div>
<div class="row wrap" style="position:relative;"
v-for="(subItem,subIndex) in addMsg.PlanTimeList">
<div class="col-6">
<div class="col-4">
<q-input filled v-model="subItem.StartTime" class="col-6 q-pr-lg q-pb-lg" mask="time">
<template v-slot:append>
<q-icon name="access_time" class="cursor-pointer">
......@@ -444,7 +454,7 @@
</template>
</q-input>
</div>
<div class="col-6">
<div class="col-4">
<q-input filled v-model="subItem.EndTime" class="col-6 q-pr-lg q-pb-lg" mask="time">
<template v-slot:append>
<q-icon name="access_time" class="cursor-pointer">
......@@ -459,6 +469,11 @@
</template>
</q-input>
</div>
<div class="col-4">
<q-input filled stack-label maxlength="10" :dense="false" v-model="subItem.TimeHour"
ref="TimeHour" class="col-4 q-pr-lg q-pb-lg" label="消耗课时"
:rules="[val => !!val || '请填写消耗课时']" @keyup.native="checkPrice(subItem,'TimeHour')" />
</div>
<div class="delBtnStyle">
<i @click="delStep(subIndex)" class="iconfont icon-guanbi"></i>
</div>
......@@ -474,7 +489,8 @@
</q-banner>
</q-popup-proxy>
</i>
<i v-if="!item.IsEndDate" class="iconfont icon-guanbi Less_Close" style="margin-left:5px;" @click.stop="delInfo(item)"></i>
<i v-if="!item.IsEndDate" class="iconfont icon-guanbi Less_Close" style="margin-left:5px;"
@click.stop="delInfo(item)"></i>
</div>
</div>
<div class="calendarInner">
......@@ -558,6 +574,7 @@
<el-select v-model="props.row.IsCheck" style="width:80px;" size="small" placeholder="小时">
<el-option label="出勤" :value="0"></el-option>
<el-option label="缺勤" :value="1"></el-option>
<el-option label="请假" :value="2"></el-option>
</el-select>
</q-td>
</template>
......@@ -616,6 +633,10 @@
setingObj: {
type: Object,
default: null
},
isShowMyBtn: {
type: Number,
default: null
}
},
name: "calendar",
......@@ -640,6 +661,7 @@
ClassTimeId: 0,
StartTime: "",
EndTime: "",
TimeHour: 0,
}]
},
isSetMore: 1, //是否显示更多设置
......@@ -744,12 +766,16 @@
align: 'center'
}
],
isShowBtn:true
}
},
created() {
if (this.setingObj && this.setingObj.ClassId) {
this.addMsg.ClassId = this.setingObj.ClassId;
}
if(this.isShowMyBtn==1){
this.isShowBtn=false;
}
},
mounted() {
var d = new Date();
......@@ -849,6 +875,7 @@
ClassTimeId: 0,
StartTime: "",
EndTime: "",
TimeHour: 0,
}]
},
//删除
......@@ -866,8 +893,8 @@
},
//保存新增修改
saveSteps() {
for(let i=0;i<this.addMsg.PlanTimeList.length;i++){
if(this.addMsg.PlanTimeList[i].StartTime==''){
for (let i = 0; i < this.addMsg.PlanTimeList.length; i++) {
if (this.addMsg.PlanTimeList[i].StartTime == '') {
this.$q.notify({
type: 'negative',
position: "top",
......@@ -875,7 +902,7 @@
})
return
}
if(this.addMsg.PlanTimeList[i].EndTime==''){
if (this.addMsg.PlanTimeList[i].EndTime == '') {
this.$q.notify({
type: 'negative',
position: "top",
......
......@@ -101,7 +101,7 @@
<el-radio-button :label="2">时间轴模式</el-radio-button>
</el-radio-group>
</div>
<div class="col-3">
<div class="col-3" v-if="isShowBtn">
<q-select filled stack-label option-value="TId" @input="changeRecord()" option-label="TeacherName"
v-model="TeacherId" ref="Teacher_Id" :options="TeacherList" label="关联教师" :dense="false" class="col-6"
emit-value map-options />
......@@ -209,6 +209,10 @@
setingObj: {
type: Object,
default: null
},
isShowMyBtn: {
type: Number,
default: null
}
},
components: {
......@@ -260,6 +264,7 @@
}
],
checkType: 1, //默认列表模式
isShowBtn:true
}
},
created() {
......@@ -267,6 +272,10 @@
},
mounted() {
this.TeacherId = this.setingObj.Teacher_Id;
if(this.isShowMyBtn==1){
this.isShowBtn=false;
}
this.getRecord();
this.GetTeacherList();
},
......
......@@ -144,9 +144,12 @@ export default {
this.$emit('close')
},
goUrlgeren(){//个人资料
// this.$router.push({
// path: '/user/personalData',
// })
this.$root.$emit("goworkobj")
this.$router.push({
path: '/user/personalData',
})
},
undefinedGongneng() {
this.$q.dialog({
......
......@@ -62,6 +62,9 @@
<td :rowspan="3" style="text-align: left">
<div class="order_OfferId" @click="goOrderdetails(item,1)">{{item.OrderId}}
</div>
<div class="order_OfferId" v-if="item.RenewOrderId&&item.RenewOrderId>0">
原订单:{{item.RenewOrderId}}
</div>
<div>{{item.EnterName}}</div>
<div style="margin-top: 10px">{{item.CreateTime}}</div>
<template v-if="AuthorityObj.isShowName">
......@@ -195,7 +198,7 @@
<q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" label="编辑"
@click="editOrder(item)" />
</template>
<q-btn-dropdown flat size="xs" color="dark" label="更多" style="margin-left:10px;">
<q-btn-dropdown flat size="xs" color="dark" v-if="AuthorityObj.isShowMore" label="更多" style="margin-left:10px;">
<q-list>
<q-item clickable v-close-popup>
<q-item-section @click="gostudent(item)">
......@@ -316,7 +319,8 @@
</template>
<template v-else>
<q-btn color="secondary" size="sm" @click="goContractMannage(subItem)" label="查看合同" />
<q-btn style="margin-left:5px;" v-if="subItem.ContractStatus==0" color="purple" size="sm" @click="goContractAudit(subItem)" label="提交审核" />
<q-btn style="margin-left:5px;" v-if="subItem.ContractStatus==0" color="purple" size="sm"
@click="goContractAudit(subItem)" label="提交审核" />
</template>
</td>
</tr>
......@@ -767,7 +771,7 @@
<myOrder-form v-if="isShowmyorderForm" :save-obj="myorderObjOption" @close="closeMOSaveForm"></myOrder-form>
<!--班级详情-->
<classinfo-form v-if="isShowClassInfo" :seting-obj="classObjOption" @close="closeClass" @success="refreshOrder">
<classinfo-form v-if="isShowClassInfo" :seting-obj="classObjOption" :isShowEditBtn="isShowEditBtn" @close="closeClass" @success="refreshOrder">
</classinfo-form>
<!--退课申请-->
......@@ -852,6 +856,10 @@
modityOrderType: {
type: Number,
default: 0, //1-销售修改,2-OP修改,3-总经理修改
},
isShowEditBtn:{
type: Number,
default: null
}
},
data() {
......@@ -892,6 +900,7 @@
isShowRenewClass: false, //是否显示续课按钮
isShowContract: true, //是否显示合同
isShowEdit: true, //是否显示修改订单按钮
isShowMore: true //是否显示更多下拉按钮
},
isShowEduForm: false, //是否显示新增修改合同弹窗
......@@ -991,6 +1000,9 @@
if (this.authObj.isShowEdit != null && !this.authObj.isShowEdit) {
this.AuthorityObj.isShowEdit = this.authObj.isShowEdit;
}
if(this.authObj.isShowMore != null && !this.authObj.isShowMore){
this.AuthorityObj.isShowMore = this.authObj.isShowMore
}
}
},
//关闭报价单
......@@ -1337,7 +1349,7 @@
});
},
//合同提交审核
goContractAudit(subItem){
goContractAudit(subItem) {
let msg = {
ContractId: subItem.ContractId,
State: 1
......
......@@ -28,6 +28,21 @@
<q-select filled stack-label option-value="Id" option-label="Name" v-model="chooseSpecialty" ref="SpecialtyList"
:options="SpecialtyList" label="老师特长" :dense="false" class="col-6 q-pr-lg q-pb-lg" emit-value map-options
@input="schoolChagne" multiple clearable />
<q-select filled stack-label option-value="Id" option-label="Name" v-model="objOption.BaseHoursEnabled"
ref="BaseHoursEnabled" :options="BaseHoursList" label="是否启用基础课时" :dense="false" class="col-6 q-pb-lg" emit-value map-options />
<q-input v-if='objOption.BaseHoursEnabled==1' filled v-model="objOption.EnableTime" mask="####-##" label="启用时间" ref="EnableTime"
:rules="[val => !!val || '请选择启用时间']">
<template v-slot:append>
<q-icon name="event" class="cursor-pointer">
<q-popup-proxy ref="qDateProxy" transition-show="scale" transition-hide="scale">
<div class="q-gutter-md row items-start">
<q-date v-model="objOption.EnableTime" mask="YYYY-MM"></q-date>
</div>
<q-btn v-close-popup label="关闭" color="primary" flat style="float:right" />
</q-popup-proxy>
</q-icon>
</template>
</q-input>
</div>
<div class="row wrap" style="margin-top:20px;">
......@@ -145,7 +160,10 @@
BaseStuNum: 0, //带班基础人数
BaseHourFee: 0, //基础课时费
Specialty: "", //老师擅长
BaseHoursEnabled:1,//是否启用基础课时 1是
EnableTime :'',//启用时间 (存到月)
},
BaseHoursList:[{Id:0,Name:'关闭'},{Id:1,Name:'开启'}],
chooseSpecialty: [],
optionTitle: "",
schoolList: [],
......@@ -268,6 +286,9 @@
this.objOption.BaseStuNum = this.saveObj.BaseStuNum;
this.objOption.BaseHourFee = this.saveObj.BaseHourFee;
this.objOption.Specialty = this.saveObj.Specialty;
this.objOption.EnableTime = this.saveObj.EnableTime;
this.objOption.BaseHoursEnabled = this.saveObj.BaseHoursEnabled;
if (this.saveObj.ChooseSpecialty && this.saveObj.ChooseSpecialty.length > 0) {
this.chooseSpecialty = this.saveObj.ChooseSpecialty;
}
......@@ -344,6 +365,9 @@
// } else if (this.objOption.TeacherHead == '') {
// err_msg = "请上传用户头像"
// }
if(this.objOption.BaseHoursEnabled==1 && this.objOption.EnableTime==''){
err_msg = "请选择日期"
}
if (err_msg == "") {
this.objOption.TeachTag = JSON.stringify(this.tags)
saveTeacher(this.objOption).then(res => {
......
This diff is collapsed.
......@@ -68,7 +68,7 @@
</div>
</div>
<div class="col" style="background: #f2f4f7;">
<q-scroll-area class="fit" :thumb-style="thumbStyle" :bar-style="barStyle" visible style="">
<q-scroll-area :thumb-style="thumbStyle" :bar-style="barStyle" visible class="fit content-scroll full-width full-height">
<router-view />
</q-scroll-area>
</div>
......@@ -178,15 +178,10 @@
if (this.userInfo && this.userInfo.MenuList) {
this.secondNavs = this.userInfo.MenuList.length > 0 ? this.userInfo.MenuList[i].SubList : []
}
// this.MsgBus.$on('add',(payload) => {
// let that= this
// that.userInfo.AccountName = payload.EmployeeName
// that.userInfo.UserIcon = payload.UserIcon
// that.userInfo.Email = payload.Email
// that.userInfo.SchoolName = payload.SchoolName
// // location.reload();
// });
this.$root.$on("goworkobj", (data)=>{
// this.setNavs(0)
this.secondNavs=[]
});
this.getLogList();
this.getMsg();
},
......@@ -307,7 +302,7 @@
<style>
@import url('~assets/css/common.css');
.full-width {
.content-scroll>.scroll>.full-width {
height: 100%;
}
......
<style scoped>
.header-box{
.header-box {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 40px;
}
}
.p_title {
color: #000000;
font-size: 20px;
/* height: 30px !important; */
display: flex;
align-items: center;
}
.activeDetail{
}
.activeDetail {
overflow-y: scroll;
}
}
.conbox{
height: calc(100vh - 220px);
overflow-y: scroll;
}
.conbox::-webkit-scrollbar {
/*滚动条整体样式*/
width : 5px; /*宽度竖滚动条的尺寸*/
height: 10px; /*高度横滚动条的尺寸*/
}
.conbox::-webkit-scrollbar-thumb {
/*滚动条里面的条*/
border-radius: 10px;
box-shadow : inset 0 0 5px rgba(0, 0, 0, 0.2);
background : #eee;
}
.conbox::-webkit-scrollbar-track {
/*滚动条里面轨道*/
border-radius: 5px;
background : #ffffff;
}
.listTitle{
font-size: 18px
}
</style>
<template>
<div class="page-body activeDetail">
......@@ -24,127 +49,190 @@
<span class="p_title">活动详情</span>
</div>
<div>
<q-btn color="accent" size="sm" class="q-mr-md" label="新增活动" @click="addActiveList" />
<q-btn color="accent" size="sm" class="q-mr-sm" label="新增活动" @click="addActiveList" />
<q-btn color="accent" size="sm" label="保存" @click="save" />
</div>
</div>
<div class="conbox">
<ActiveForm :save-obj="activedata" :activeTypeOptions="activityTypeList" ref="childForm"
@success="getactivedata" />
<div class="">
<div v-for="(item,index) in ActivityTitle" :key="item.id" class="flex " >
<DetailItem :itemData="item" :index="index+1" @success="getItemData($event,index)" ref="child"/>
<div class="q-mt-lg q-mb-lg listTitle">
活动列表
</div>
<div v-for="(item,index) in ActivityTitle" :key="item.id" class="flex ">
<DetailItem :itemData="item" :index="index+1" @success="getItemData($event,index)" ref="child" />
<el-tooltip class="item" effect="dark" content="删除当前活动" placement="top" v-if="index>0">
<i class="iconfont icon-img_delete_small q-ml-sm" style="color: #2961FE" @click="delActiveList(index)"></i>
</el-tooltip>
</div>
</div>
</div>
</div>
</template>
<script>
import DetailItem from "../../components/activity/activeDetail-item"
import DetailItem from "../../components/activity/activeDetail-item"
import ActiveForm from '../../components/activity/active-from'
export default {
meta: {
title: "活动详情"
},
components: {
DetailItem
DetailItem,
ActiveForm
},
data() {
return {
msg:{
Id:0,
ActivityTitle:[]
msg: {
Id: 0,
ActivityTitle: []
},
ActivityTitle:[
{
Title:"",//活动大标题
TripSort:0,//活动排序
ActivityPlanList:[//活动安排
activeBaseData: {
Id: 0, //活动编号(主键)
ActivityName: "", //活动名称
StartTime: "", //开始时间
EndTime: "", //结束时间
CoverImg: "", //封面图
ActivityType: 0, //活动类型
ActivityInfo: "", //活动详情
SignStartTime: "", //报名开始时间
SignEndTime: "", //报名截止时间
IsFree: 1, //是否免费 1是 2否
Price: 0, //价格
PointNum: 0, //点数
IsCancelConfirm: 1, //取消确定1是 2否
Distinguish: 1, //是否区别性别 0区分 1不区分
ManNum: 0, //男数量
WoManNum: 0, //女数量
AgeLimit: 1, //是否区别年龄 0区分 1不区分
StartAge: 0, //最小年龄
EndAge: 0, //最大年龄
LnsideLimit: 1, //内部限制0-否,1-是
LonLat: '', //经纬度(逗号分隔)
LocationName: '',
},
ActivityTitle: [{
Title: "", //活动大标题
TripSort: 0, //活动排序
ActivityPlanList: [ //活动安排
{
TripSort:0,//排序
StartTime:"",//开始时间
ActivityDuration:"",//活动时长(单位:分钟)
LonLat:"",//活动地址经纬度
LocationName:"",//活动地址
TripTitle:"",//安排标题
TripContent:"",//内容
TripPicList:[]//图片
TripSort: 0, //排序
StartTime: "", //开始时间
ActivityDuration: "", //活动时长(单位:分钟)
LonLat: "", //活动地址经纬度
LocationName: "", //活动地址
TripTitle: "", //安排标题
TripContent: "", //内容
TripPicList: [] //图片
}
]
}
],
item:{
}],
activedata: {
}
},
activityTypeList: [],
}
},
mounted(){
if(this.$route.query.Id){
this.msg.Id=this.$route.query.Id
mounted() {
this.getActiveTypeList();
if (this.$route.query.Id) {
this.msg.Id = this.$route.query.Id
if(this.msg.Id>0){
this.getDetail()
}
}
},
methods: {
goBack(){
goBack() {
this.$router.go(-1)
},
addActiveList(){
let obj={
Title:"",//活动大标题
TripSort:this.ActivityTitle.length,//活动排序
ActivityPlanList:[//活动安排
addActiveList() {
let obj = {
Title: "", //活动大标题
TripSort: this.ActivityTitle.length, //活动排序
ActivityPlanList: [ //活动安排
{
TripSort:0,//排序
StartTime:"",//开始时间
ActivityDuration:"",//活动时长(单位:分钟)
LonLat:"",//活动地址经纬度
LocationName:"",//活动地址
TripTitle:"",//安排标题
TripContent:"",//内容
TripPicList:[]//图片
TripSort: 0, //排序
StartTime: "", //开始时间
ActivityDuration: "", //活动时长(单位:分钟)
LonLat: "", //活动地址经纬度
LocationName: "", //活动地址
TripTitle: "", //安排标题
TripContent: "", //内容
TripPicList: [] //图片
}
]
}
this.ActivityTitle.push(obj)
},
delActiveList(index){
this.ActivityTitle.splice(index,1)
delActiveList(index) {
this.ActivityTitle.splice(index, 1)
},
getItemData(val,index){
this.msg.ActivityTitle[index]=val
//活动详情列表数据
getItemData(val, index) {
this.msg.ActivityTitle[index] = val
},
//保存信息
save() {
this.msg.ActivityTitle=this.ActivityTitle
this.$refs.child.map(x=>{
this.msg.ActivityTitle = this.ActivityTitle
this.$refs.child.map(x => {
x.ruleVerification();
})
let res= this.$refs.child.every(x=>{
let res = this.$refs.child.every(x => {
return x.ruleVerification();
})
if(res){
this.apipostDS("/api/Education/GetSetActivityPlan", this.msg, (res) => {
let res2 = this.$refs.childForm.saveRule()
if (res && res2) {
let msg = {
...this.msg,
...this.activeBaseData
}
console.log(144, msg)
this.apipostDS("/api/Education/SetActivity", msg, (res) => {
if (res.data.resultCode === 1) {
this.Success(res.data.message);
// this.getDetail()
this.$router.push("/activity/activityList")
} else {
this.Error(res.data.message);
}
})
}
},
  getDetail(){
        this.apipostDS("/api/Education/GetActivity", {Id:this.msg.Id}, (res) => {
            if (res.data.resultCode === 1) {
              this.ActivityTitle=res.data.data.ActivityTitleList
            } 
          })
      }
getDetail() {
this.apipostDS("/api/Education/GetActivity", {
Id: this.msg.Id
}, (res) => {
if (res.data.resultCode === 1) {
this.ActivityTitle = res.data.data.ActivityTitleList
this.activedata = res.data.data
}
})
},
//获取活动类型下拉
getActiveTypeList() {
this.apipostDS("/api/Education/GetCommerceActivityTypeList", {}, (res) => {
if (res.data.resultCode === 1) {
this.activityTypeList = res.data.data;
this.activityTypeList.unshift({
Id: -1,
TypeName: "不限"
})
}
})
},
//活动基础数据
getactivedata(val) {
this.activeBaseData = val
}
}
}
......
This diff is collapsed.
<style scoped>
.header-box {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 40px;
}
.p_title {
color: #000000;
font-size: 20px;
/* height: 30px !important; */
display: flex;
align-items: center;
}
.activeDetail {
overflow-y: scroll;
}
.conbox{
height: calc(100vh - 220px);
overflow-y: scroll;
}
.conbox::-webkit-scrollbar {
/*滚动条整体样式*/
width : 5px; /*宽度竖滚动条的尺寸*/
height: 10px; /*高度横滚动条的尺寸*/
}
.conbox::-webkit-scrollbar-thumb {
/*滚动条里面的条*/
border-radius: 10px;
box-shadow : inset 0 0 5px rgba(0, 0, 0, 0.2);
background : #eee;
}
.conbox::-webkit-scrollbar-track {
/*滚动条里面轨道*/
border-radius: 5px;
background : #ffffff;
}
.listTitle{
font-size: 18px
}
</style>
<template>
<div class="page-body activeDetail">
<div class="header-box">
<div class="flex">
<q-btn color="accent" size="sm" class="q-mr-md" label="返回" @click="goBack" />
<span class="p_title">复制活动</span>
</div>
<div>
<q-btn color="accent" size="sm" class="q-mr-sm" label="新增活动" @click="addActiveList" />
<q-btn color="accent" size="sm" label="保存" @click="save" />
</div>
</div>
<div class="conbox">
<ActiveForm :save-obj="activedata" :activeTypeOptions="activityTypeList" ref="childForm"
@success="getactivedata" />
<div class="">
<div class="q-mt-lg q-mb-lg listTitle">
活动列表
</div>
<div v-if="ActivityTitle.length==0">
暂无活动安排
</div>
<div v-if="ActivityTitle.length>0">
<div v-for="(item,index) in ActivityTitle" :key="item.id" class="flex ">
<DetailItem :itemData="item" :index="index+1" @success="getItemData($event,index)" ref="child" />
<el-tooltip class="item" effect="dark" content="删除当前活动" placement="top" v-if="index>0">
<i class="iconfont icon-img_delete_small q-ml-sm" style="color: #2961FE" @click="delActiveList(index)"></i>
</el-tooltip>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
import DetailItem from "../../components/activity/activeDetail-item"
import ActiveForm from '../../components/activity/active-from'
export default {
meta: {
title: "活动详情"
},
components: {
DetailItem,
ActiveForm
},
data() {
return {
msg: {
Id: 0,
ActivityTitle: []
},
activeBaseData: {
},
ActivityTitle: [{
Title: "", //活动大标题
TripSort: 0, //活动排序
ActivityPlanList: [ //活动安排
{
TripSort: 0, //排序
StartTime: "", //开始时间
ActivityDuration: "", //活动时长(单位:分钟)
LonLat: "", //活动地址经纬度
LocationName: "", //活动地址
TripTitle: "", //安排标题
TripContent: "", //内容
TripPicList: [] //图片
}
]
}],
activedata: {
},
activityTypeList: [],
}
},
mounted() {
this.getActiveTypeList();
if (this.$route.query.Id) {
this.msg.Id = this.$route.query.Id
this.getDetail()
}
},
methods: {
goBack() {
this.$router.go(-1)
},
addActiveList() {
let obj = {
Title: "", //活动大标题
TripSort: this.ActivityTitle.length, //活动排序
ActivityPlanList: [ //活动安排
{
TripSort: 0, //排序
StartTime: "", //开始时间
ActivityDuration: "", //活动时长(单位:分钟)
LonLat: "", //活动地址经纬度
LocationName: "", //活动地址
TripTitle: "", //安排标题
TripContent: "", //内容
TripPicList: [] //图片
}
]
}
this.ActivityTitle.push(obj)
},
delActiveList(index) {
this.ActivityTitle.splice(index, 1)
},
//活动详情列表数据
getItemData(val, index) {
this.msg.ActivityTitle[index] = val
},
//保存信息
save() {
this.msg.ActivityTitle = this.ActivityTitle
this.$refs.child.map(x => {
x.ruleVerification();
})
let res = this.$refs.child.every(x => {
return x.ruleVerification();
})
let res2 = this.$refs.childForm.saveRule()
if (res && res2) {
let msg = {
...this.msg,
...this.activeBaseData
}
msg.Id=0
this.apipostDS("/api/Education/SetActivity", msg, (res) => {
if (res.data.resultCode === 1) {
this.Success("操作成功");
// this.getDetail()
this.$router.push("/activity/activityList")
} else {
this.Error(res.data.message);
}
})
}
},
getDetail() {
this.apipostDS("/api/Education/GetActivity", {
Id: this.msg.Id
}, (res) => {
if (res.data.resultCode === 1) {
this.ActivityTitle = res.data.data.ActivityTitleList
this.activedata = res.data.data
this.activedata.StartTime=""
this.activedata.StartTimeStr=""
this.activedata.EndTime=""
this.activedata.EndTimeStr=""
this.activedata.SignStartTime=""
this.activedata.SignStartTimeStr=""
this.activedata.SignEndTime=""
this.activedata.SignEndTimeStr=""
}
})
},
//获取活动类型下拉
getActiveTypeList() {
this.apipostDS("/api/Education/GetCommerceActivityTypeList", {}, (res) => {
if (res.data.resultCode === 1) {
this.activityTypeList = res.data.data;
this.activityTypeList.unshift({
Id: -1,
TypeName: "不限"
})
}
})
},
//活动基础数据
getactivedata(val) {
this.activeBaseData = val
}
}
}
</script>
<style lang="sass">
@import url('~assets/css/table.sass')
</style>
......@@ -479,7 +479,7 @@
//分页改变
changePage(val) {
this.msg.PageIndex = val;
this.getSchool()
this.getList()
},
getChild(deptArray) {
var tempStr = "";
......
......@@ -46,9 +46,9 @@
height="75px"
class=" text-white shadow-1 rounded-borders"
arrows
control-color="grey-4"
control-color="grey-1"
control-text-color="primary"
control-type="regular"
control-type="unelevated"
>
<q-carousel-slide v-for="(slide,slideIndex) in _item.TimeList" :key="slideIndex" :name="slideIndex" >
<div class="info-box">
......
<style>
</style>
<template>
<div>
<el-collapse v-if="dayData&&dayData.SubList&&dayData.SubList.length>0">
<el-collapse-item v-for="(subItem,subIndex) in dayData.SubList" :key="subIndex" :name="subIndex">
<template slot="title">
<div class="plan_Tdiv">
<span v-if="subItem.TimeStr==='早上'" class="commonTimeStr greenTime">{{subItem.TimeStr}}</span>
<span v-if="subItem.TimeStr==='下午'" class="commonTimeStr blueTime">{{subItem.TimeStr}}</span>
<span v-if="subItem.TimeStr==='晚上'" class="commonTimeStr orangeTime">{{subItem.TimeStr}}</span>
<span v-if="subItem.Type===0&&subItem.ClassType==2">试听课</span>
<span style="color:red;margin:0 5px;">{{subItem.TeacherName}}</span>
<span>[{{subItem.RoomName}}]</span>
</div>
</template>
<div @click="goUrl(subItem)">
<div class="plan_Inner">
<div class="plan_LeftTitle">上课时间:</div>
<div class="plan_RightInner">{{subItem.StartTime}}-{{subItem.EndTime}}</div>
</div>
<div class="plan_Inner" v-if="subItem.ClassName">
<div class="plan_LeftTitle">班级:</div>
<div class="plan_RightInner">{{subItem.ClassName}}</div>
</div>
<div class="plan_Inner">
<div class="plan_LeftTitle">课程名称:</div>
<div class="plan_RightInner">{{subItem.CourseName}}</div>
</div>
<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>
</div>
</div>
<div class="plan_Inner" style="align-items:center;" v-if="subItem.CompleteProgress>=0">
<div class="plan_LeftTitle">课程进度:</div>
<div class="plan_RightInner">
<el-progress :percentage="subItem.CompleteProgress"></el-progress>
</div>
</div>
</div>
</el-collapse-item>
</el-collapse>
<div class="text-grey-6" v-else>
暂无课程安排
</div>
</div>
</template>
<script>
export default {
props: {
dayData: {
type: Object,
default: null
},
fatherMethod: {
type: Function,
default: null
}
},
data() {
return {
}
},
methods: {
goUrl(item) {
if (item.Type === 0 && item.ClassType === 1) {
this.$router.push({
path: "/classroom/courseInfo",
query: {
id: item.Id
}
})
}else if(item.Type >0){
this.$emit('unusual',item);
}
}
}
}
</script>
This diff is collapsed.
......@@ -308,7 +308,7 @@
ClassStatus: 0, //班级状态
TeacherName: '', //带班老师
CourseName: '', //学习课程
School_Id: 0, //关联校区
School_Id: -1, //关联校区
},
//班级状态
classStatusList: [],
......@@ -327,7 +327,7 @@
}
},
created() {
if (this.$route.query) {
if (this.$route.query && this.$route.query.ClassName) {
this.msg.ClassName = decodeURI(this.$route.query.ClassName)
}
this.getClassStatus();
......@@ -438,7 +438,7 @@
tempArray = [];
}
tempArray.unshift({
SId: 0,
SId: -1,
SName: "不限"
})
this.schoolList = tempArray;
......
......@@ -4,7 +4,7 @@
<div class="row col" style="justify-content: space-between;align-items: center;margin-bottom: 10px">
<div>
<template v-if="data&& data.ClassInfo">
{{data.ClassInfo.ClassName}}
{{data.ClassInfo.ClassName}} <span v-if='data.ClassInfo.ClassNo!=null' style="cursor: pointer;text-decoration: underline;" @click='gojapaneseTrain(data.ClassInfo.ClassNo)'>({{data.ClassInfo.ClassNo}})</span>
</template>
</div>
<div class="row" style="align-items: center">
......@@ -23,7 +23,7 @@
</div>
</div>
<div class="page-content">
<orderlist :dataList="dataList" ref="orderL" :authObj="authObj" :modityOrderType="2" :cancelList="CancelList"
<orderlist :dataList="dataList" ref="orderL" :authObj="authObj" :isShowEditBtn="isShowEditBtn" :modityOrderType="2" :cancelList="CancelList"
@success="refreshClassOrder"></orderlist>
</div>
</div>
......@@ -57,7 +57,10 @@
isShowManagerRemark: true, //显示总经理备注
isShowCommissionEdit: true, //显示修改提成按钮
isShowRewardEdit: true, //显示修改额外提成按钮
}
isShowEdit: true, //显示修改按钮
isShowMore: true //显示更多下拉
},
isShowEditBtn:0
}
},
created() {
......@@ -65,6 +68,11 @@
this.ClassId = this.$route.query.ClassId
this.msg.ClassId = this.ClassId;
}
if(this.$route.query.isFromMyclass&&this.$route.query.isFromMyclass==1){
this.authObj.isShowEdit=false
this.authObj.isShowMore=false
this.isShowEditBtn=1
}
this.getList();
},
mounted() {
......@@ -110,6 +118,12 @@
//刷新页面
refreshClassOrder() {
this.getList();
},
gojapaneseTrain(ClassNo){//跳转到产品列表
var tempStr = '/sale/japaneseTrain?ClassNo=' + ClassNo;
this.$router.push({
path: tempStr
});
}
}
}
......
......@@ -165,21 +165,45 @@
}
.prePare_Content {
width: 430px;
/* width: 430px; */
min-height: 100px;
height: auto;
background-color: #F0F5FB;
padding: 20px;
margin: 20px auto;
}
.prePare_Content h6,
.prePare_Content h5,
.prePare_Content h4,
.prePare_Content h3,
.prePare_Content h2,
.prePare_Content h1{
font-size: unset !important;
line-height: unset !important;
letter-spacing: unset !important;
}
</style>
<template>
<div class="row">
<div class="page-body lessonPreparation" style="width:40%" v-if="chapter">
<div class="prepareTopTitle q-table__title">
<div class="row full-height">
<div class="page-body lessonPreparation" style="width:40%;height: calc(100% - 30px) !important;">
<q-scroll-area
:thumb-style="thumbStyle"
:content-style="contentStyle"
:content-active-style="contentActiveStyle"
class="full-width full-height"
>
<div class="row">
<div class="prepareTopTitle q-table__title col">
<div class="prePare_Line"></div>
<div>{{courseName}}</div>
</div>
<div class="prepareTopTitle q-table__title" v-if="chapters && chapters.length>0">
<div class="prePare_Line"></div>
<div>{{chapter.CourseName}}</div>
<div>{{chapters[0].ChapterName}}</div>
</div>
</div>
<div v-if="chapters && chapters.length>0">
<div v-for="(chapter,i) in chapters[0].ChildList">
<div class="preSecond">
{{chapter.ChapterName}}
</div>
......@@ -204,8 +228,17 @@
</div>
<div class="prePare_Content text-center q-pa-lg" style="background:#FBF6F0" v-else>暂无内容</div>
</div>
<div class="page-body lessonPreparation row col">
</div>
<div v-else class="q-pa-lg bg-grey-2 rounded-borders q-my-lg">暂无章节信息</div>
</q-scroll-area>
</div>
<div class="page-body lessonPreparation row col" style="height: calc(100% - 30px) !important;">
<q-scroll-area
:thumb-style="thumbStyle"
:content-style="contentStyle"
:content-active-style="contentActiveStyle"
class="full-width full-height"
>
<div>
<div class="lessTop">备课编辑</div>
<div style="margin:20px 0;">
......@@ -213,7 +246,7 @@
教案名称:<el-input v-model="addMsg.LessonPlan" placeholder="教案名称" class="w260"></el-input>
<span style="margin-left:30px;">
<el-input v-model="addMsg.CourseNum" style="margin:0 5px;" placeholder="第几课" @keyup.native="checkInteger(addMsg,'CourseNum')" class="w60"></el-input></span>
<span style="float:right;display:inline-block;">
<span style="float:right;display:inline-block;margin-left:20px;">
<q-btn color="accent" size="sm" class="q-mr-md" icon="add" label="选择模板" @click="getModule()" />
</span>
</div>
......@@ -228,25 +261,25 @@
</div>
</div>
<div class="teach_Content">
指導内容
教学目标
</div>
<div style="" v-for="(item,index) in addMsg.LessonPlanList">
<q-input filled stack-label maxlength="50" v-model="item.CourseTitle" :dense="false" class="col-12 q-pb-lg" :label="item.CourseName+'項目'" />
<div style="" v-for="(item,index) in addMsg.LessonPlanList" v-if="index==0">
<q-input :rows="5" type="textarea" filled stack-label v-model="item.CourseTitle" :dense="false" class="col-12 q-pb-lg" label="教学目标" />
</div>
<div class="teach_Content">
指導項目
教学难点
</div>
<div style="" v-for="(item,index) in addMsg.LessonPlanList">
<div style="margin-top: 10px">{{item.CourseName}}</div>
<div style="" v-for="(item,index) in addMsg.LessonPlanList" v-if="index==0">
<!-- <div style="margin-top: 10px">{{item.CourseName}}</div> -->
<UeEditor class="col-8" v-model="item.LessonPlanProjectsList[0].ProjectContent" :config="config"></UeEditor>
</div>
<div style="" v-for="(item,index) in addMsg.LessonPlanList">
<div style="" v-for="(item,index) in addMsg.LessonPlanList" v-if="index==0">
<div class="teach_Content">
{{item.CourseName}}上课内容
教学流程
</div>
<div class="row q-gutter-xs cont" v-for="(subItem,subIndex) in item.LessonPlanDetailsList" style="margin-top:20px;align-items: self-end;width:100%;">
<q-input filled stack-label maxlength="20" v-model="subItem.Duration" @keyup.native="checkInteger(subItem,'Duration')" style="width: 100%;" :dense="false" class=" " label="时长" suffix="分钟" />
<q-input filled stack-label v-model="subItem.Duration" @keyup.native="checkInteger(subItem,'Duration')" style="width: 100%;" :dense="false" class=" " label="时长" suffix="分钟" />
<UeEditor class="" style="width: 100%;" v-model="subItem.ProjectContent" :config="config"></UeEditor>
<div class="Less_Delete " title="删除详情" @click="delLessInfo(index,subIndex)">
......@@ -259,13 +292,14 @@
</div>
</div>
<div style="margin-top:30px;" v-if="isShowEdit">
<div style="margin-top:30px;">
<span class="beikeModule" @click="saveInfo(1)">存为模板</span>
<q-btn label="提交" size="md" color="accent q-px-md" @click="saveInfo(0)" />
</div>
<lessoncheck-form v-if="IsShowLessForm" @close="closeTeachSaveForm" @success="refreshPage">
</lessoncheck-form>
</div>
</q-scroll-area>
</div>
</div>
</template>
......@@ -288,6 +322,15 @@ export default {
},
data() {
return {
contentStyle: {},
contentActiveStyle: {},
thumbStyle: {
right: '2px',
borderRadius: '5px',
backgroundColor: '#027be3',
width: '5px',
opacity: 0.75
},
msg: {
ClassId: 0,
School_Id: 0,
......@@ -310,7 +353,8 @@ export default {
},
IsShowLessForm: false,
nowDate: '',
chapter: null,
chapters: null,
courseName:"",
isShowEdit: false, //是否显示提交按钮
}
},
......@@ -320,6 +364,7 @@ export default {
this.msg.ClassId = this.$route.query.ClassId;
this.msg.School_Id = this.$route.query.School_Id;
this.msg.ClassPlanId = this.$route.query.ClassPlanId;
this.addMsg.CourseNum = this.$route.query.Ranks;
}
this.getList();
......@@ -338,10 +383,17 @@ export default {
console.log(res.Data)
if (res.Code == 1) {
let data = res.Data;
if (data.Chapter) {
this.chapter = data.Chapter
if (data.Chapter && data.Chapter.length>0) {
if(!data.Chapter[0].ChildList || data.Chapter[0].ChildList.length==0){
console.log(data.Chapter[0].ChildList.length)
data.Chapter[0].ChildList=[]
data.Chapter[0].ChildList.push(data.Chapter[0])
}
this.chapters = data.Chapter
}
this.addMsg.CourseNum = data.CourseNum;
this.courseName=data.CourseName
// this.addMsg.CourseNum = data.CourseNum;
this.addMsg.ClassId = data.ClassId;
this.addMsg.School_Id = data.School_Id;
this.addMsg.ClassPlanId = data.ClassPlanId;
......
......@@ -238,9 +238,10 @@
});
},
gourlteacher2(path,row,item) {
let StudentName = encodeURI(row.StudentName)
this.OpenNewUrl('/financial/'+path, {
ClassId: this.ClassId,
StudentName:row.StudentName,
StudentName:StudentName,
datetype:'2',
StartMonth:item.Month,
EndMonth:item.Month,
......
......@@ -282,7 +282,7 @@
<div class="pay_InorOut">
<div class="pay_TopTitle" style="display:flex;justify-content: space-between;align-items:center;">
<div><span class="Pay_Line"></span>收入</div>
<q-btn label="新增收款" color="accent q-px-md" size="sm" style="font-weight:400 !important;"
<q-btn label="新增收款" v-if="isShowBtn" color="accent q-px-md" size="sm" style="font-weight:400 !important;"
@click="goShoukuan(1)" />
</div>
<div class="pay_TopTitle" style="margin:15px 0 15px 20px;font-size:12px;">
......@@ -390,7 +390,7 @@
<div class="pay_TopTitle"
style="margin-top:30px;display:flex;justify-content: space-between;align-items:center;">
<div><span class="Pay_Line" style="background:#F72E52;"></span>支出</div>
<q-btn label="新增付款" color="accent q-px-md" size="sm" style="font-weight:400 !important;"
<q-btn label="新增付款" v-if="isShowBtn" color="accent q-px-md" size="sm" style="font-weight:400 !important;"
@click="goShoukuan(2)" />
</div>
<div class="pay_TopTitle" style="margin:15px 0 15px 20px;font-size:12px;">
......@@ -467,6 +467,7 @@
School_Id: 0
},
ClassName:'',
isShowBtn:true
}
},
created() {},
......@@ -480,6 +481,9 @@
if (this.$route.query && this.$route.query.ClassName) {
this.ClassName = this.$route.query.ClassName;
}
if(this.$route.query && this.$route.query.isFromMyClass){
this.isShowBtn = false
}
this.getData();
},
methods: {
......
This diff is collapsed.
......@@ -107,6 +107,9 @@
margin-bottom:20px;
box-shadow: 0px 2px 10px 0px rgba(237, 238, 240, 0.5);
}
.qussTionTitDiv img{
width:100%;
}
</style>
<template>
<div class="questionMain">
......@@ -115,7 +118,7 @@
<div class="col-12 edit_stem">
{{objOption.QuestionTypeName}}
</div>
<div class="col-12">
<div class="col-12 qussTionTitDiv">
<div v-html="objOption.Title" @click="clickQuestion($event)"></div>
</div>
<!--单选题-->
......
This diff is collapsed.
......@@ -1425,7 +1425,7 @@
}
let userInfo = this.getLocalStorage();
if (this.$route.query.BranchId) {
this.msg.SchoolId = this.$route.query.BranchId != undefined ? this.$route.query.BranchId : '';
this.msg.SchoolId = this.$route.query.BranchId != undefined ? Number( this.$route.query.BranchId ): '';
} else {
if (userInfo.School_Id > 0) {
......
......@@ -105,13 +105,13 @@
<el-table-column prop="UserName" label="销售" > </el-table-column>
<el-table-column width='170' prop="ClassName" label="班级信息" >
<template slot-scope="scope">
<div>{{scope.row.ClassName}} {{scope.row.ClassTypeName}}<span style="color: #409EFF;" v-if='scope.row.IsContinueClass==1'>(续)</span></div>
<div><span style="cursor: pointer;text-decoration: underline;" @click="goUrlclass('/course/classManage',scope.row.ClassName)">{{scope.row.ClassName}}</span> {{scope.row.ClassTypeName}}<span style="color: #409EFF;" v-if='scope.row.IsContinueClass==1'>(续)</span></div>
<div>学生数量:{{scope.row.StudentCount}}</div>
</template>
</el-table-column>
<el-table-column prop="OrderId" label="订单号" >
<template slot-scope="scope">
<div style="cursor: pointer;" >{{scope.row.OrderId}} </div>
<div style="cursor: pointer;text-decoration: underline;" @click="goUrlorderList('/sale/orderStatistics',scope.row.OrderId)">{{scope.row.OrderId}} </div>
</template>
</el-table-column>
......@@ -394,7 +394,18 @@
tcexport(){//导出
var msg = JSON.parse(JSON.stringify(this.msg));
EduDownLoad("/SellCommission/GetSellCommissionStatisticsToExcel", msg, "提成统计.xls")
}
},
goUrlclass(path,Names){//班级
let Name = encodeURI(Names)
this.OpenNewUrl(path, {
ClassName: Name,
});
},
goUrlorderList(path,ID){//订单跳转
this.OpenNewUrl(path, {
OrderId: ID,
});
},
},
}
......
This diff is collapsed.
This diff is collapsed.
......@@ -243,7 +243,7 @@
this.msg.ClassId = Number(this.$route.query.ClassId)
}
if(this.$route.query && this.$route.query.StudentName){
this.msg.StudentName = this.$route.query.StudentName
this.msg.StudentName = decodeURI(this.$route.query.StudentName)
}
},
......
......@@ -224,6 +224,8 @@
if(this.$route.query && this.$route.query.ClassName){
let Name = decodeURI(this.$route.query.ClassName)
this.ClassName = [Name]
console.log(Name)
this.msg.pageSize = 1000
}
},
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
......@@ -47,6 +47,9 @@ const user = {
});
});
},
setUserUpdate({commit},u){
commit("SET_USERINFO", u);
},
// 获取权限
getAuth({ commit }) {
......
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