Commit f28105ab authored by Mac's avatar Mac

1

parent e002774c
<template> <template>
<q-dialog v-model="persistent" maximized full-height position="right" @hide="closeShenheForm"> <q-dialog v-model="persistent" maximized full-height position="right" @hide="closeShenheForm">
<q-card style="margin-top:61px;width:375px" class="no-border-radius q-pa-lg">
<div class="text-weight-bold"> <q-card style="margin-top:61px;width:375px;padding-bottom: 70px;" class="no-border-radius q-pa-lg">
<span style="font-size:20px;" class="q-mr-md">用户个人资料</span> <q-scroll-area style="height: 100%; max-width: 375px;" :thumb-style="thumbStyle"
<span class="remark-font">12条未读消息</span> :bar-style="barStyle">
</div> <div class="text-weight-bold">
<div class="q-mt-lg flex"> <span style="font-size:20px;" class="q-mr-md">用户个人资料</span>
<q-avatar size="100px" font-size="36px" rounded style="background:#C9F7F5" text-color="white"> <span class="remark-font">12条未读消息</span>
<img :src="showObj.UserIcon" v-if="showObj.UserIcon"> </div>
<span v-else>{{showObj.AccountName.substring(0,1)}}</span> <div class="q-mt-lg flex">
</q-avatar> <q-avatar size="100px" font-size="36px" rounded style="background:#C9F7F5" text-color="white">
<div class="col q-ml-md"> <img :src="showObj.UserIcon" v-if="showObj.UserIcon">
<div class="text-weight-bold" style="font-size:16px;">{{showObj.AccountName}}</div> <span v-else>{{showObj.AccountName.substring(0,1)}}</span>
<div class="text-muted" style="font-size:13px">{{showObj.SchoolName}}·{{showObj.PostName}}</div> </q-avatar>
<div class="flex items-center text-muted"> <div class="col q-ml-md">
<inline-svg class="svg-icon svg-icon-primary q-mr-xs" src="icons/svg/Communication/Mail-notification.svg"></inline-svg> <div class="text-weight-bold" style="font-size:16px;">{{showObj.AccountName}}</div>
<span>{{showObj.Email}}</span> <div class="text-muted" style="font-size:13px">{{showObj.SchoolName}}·{{showObj.PostName}}</div>
</div> <div class="flex items-center text-muted">
<div class="q-mt-xs"> <inline-svg class="svg-icon svg-icon-primary q-mr-xs" src="icons/svg/Communication/Mail-notification.svg"></inline-svg>
<q-btn color="primary" flat @click="logout">退出登录</q-btn> <span>{{showObj.Email}}</span>
</div>
<div class="q-mt-xs">
<q-btn color="primary" flat @click="logout">退出登录</q-btn>
</div>
</div> </div>
</div> </div>
</div> <q-separator color="grey-2" class="q-my-md"></q-separator>
<q-separator color="grey-2" class="q-my-md"></q-separator> <q-list>
<q-list> <q-item class="q-my-sm" clickable v-ripple v-for="(item,index) in showObj.UserCenterList" :key="index" :to="item.MenuUrl">
<q-item class="q-my-sm" clickable v-ripple v-for="(item,index) in showObj.UserCenterList" :key="index" :to="item.MenuUrl"> <q-item-section avatar>
<q-item-section avatar> <q-avatar style="background-color: #F3F6F9;" rounded size="40px" text-color="primary">
<q-avatar style="background-color: #F3F6F9;" rounded size="40px" text-color="primary"> <i :class="[item.MenuIcon]"></i>
<i :class="[item.MenuIcon]"></i> </q-avatar>
</q-avatar> </q-item-section>
</q-item-section> <q-item-section>
<q-item-section> <q-item-label class="font-pfb">{{item.MenuName}}</q-item-label>
<q-item-label class="font-pfb">{{item.MenuName}}</q-item-label> </q-item-section>
</q-item-section> </q-item>
</q-item> <!-- 跳转资产 -->
<!-- 跳转资产 --> <q-item class="q-my-sm" clickable v-ripple @click="goUrlZC">
<q-item class="q-my-sm" clickable v-ripple @click="goUrlZC"> <q-item-section avatar>
<q-item-section avatar> <q-avatar style="background-color: #F3F6F9;" rounded size="40px" text-color="primary">
<q-avatar style="background-color: #F3F6F9;" rounded size="40px" text-color="primary"> <i class="iconfont icon-zichan"></i>
<i class="iconfont icon-zichan"></i> </q-avatar>
</q-avatar> </q-item-section>
</q-item-section> <q-item-section>
<q-item-section> <q-item-label class="font-pfb">资产管理</q-item-label>
<q-item-label class="font-pfb">资产管理</q-item-label> </q-item-section>
</q-item-section> </q-item>
</q-item> </q-list>
</q-list> <q-separator color="grey-2" class="q-my-md"></q-separator>
<q-separator color="grey-2" class="q-my-md"></q-separator> <div class="text-weight-bold" style="font-size:16px;">常用功能</div>
<div class="text-weight-bold" style="font-size:16px;">常用功能</div> <q-list>
<q-list> <q-item class="q-my-sm q-pa-xs" clickable v-ripple @click="goUrlgeren" >
<q-item class="q-my-sm q-pa-xs" clickable v-ripple @click="undefinedGongneng"> <q-item-section avatar>
<q-item-section avatar> <q-avatar style="background-color: #F3F6F9;" rounded size="40px" text-color="secondary">
<q-avatar style="background-color: #F3F6F9;" rounded size="40px" text-color="secondary"> <inline-svg class="svg-icon svg-icon-secondary" src="icons/svg/General/Notification2.svg"></inline-svg>
<inline-svg class="svg-icon svg-icon-secondary" src="icons/svg/General/Notification2.svg"></inline-svg> </q-avatar>
</q-avatar> </q-item-section>
</q-item-section> <q-item-section>
<q-item-section> <q-item-label class="font-pfb">个人资料</q-item-label>
<q-item-label class="font-pfb">个人资料</q-item-label> <q-item-label caption lines="1" class="remark-font">账号信息设置等相关功能</q-item-label>
<q-item-label caption lines="1" class="remark-font">账号信息设置等相关功能</q-item-label> </q-item-section>
</q-item-section> </q-item>
</q-item> <q-item class="q-my-sm q-pa-xs" clickable v-ripple @click="undefinedGongneng">
<q-item class="q-my-sm q-pa-xs" clickable v-ripple @click="undefinedGongneng"> <q-item-section avatar>
<q-item-section avatar> <q-avatar style="background-color: #F3F6F9;" rounded size="40px" text-color="secondary">
<q-avatar style="background-color: #F3F6F9;" rounded size="40px" text-color="secondary"> <inline-svg class="svg-icon svg-icon-warning" src="icons/svg/Shopping/Chart-bar1.svg"></inline-svg>
<inline-svg class="svg-icon svg-icon-warning" src="icons/svg/Shopping/Chart-bar1.svg"></inline-svg> </q-avatar>
</q-avatar> </q-item-section>
</q-item-section> <q-item-section>
<q-item-section> <q-item-label class="font-pfb">奖金提成</q-item-label>
<q-item-label class="font-pfb">奖金提成</q-item-label> <q-item-label caption lines="1" class="remark-font">销售与教师相关的奖金或提成</q-item-label>
<q-item-label caption lines="1" class="remark-font">销售与教师相关的奖金或提成</q-item-label> </q-item-section>
</q-item-section> </q-item>
</q-item> <q-item class="q-my-sm q-pa-xs" clickable v-ripple @click="undefinedGongneng">
<q-item class="q-my-sm q-pa-xs" clickable v-ripple @click="undefinedGongneng"> <q-item-section avatar>
<q-item-section avatar> <q-avatar style="background-color: #F3F6F9;" rounded size="40px" text-color="secondary">
<q-avatar style="background-color: #F3F6F9;" rounded size="40px" text-color="secondary"> <inline-svg class="svg-icon svg-icon-negative" src="icons/svg/Files/Selected-file.svg"></inline-svg>
<inline-svg class="svg-icon svg-icon-negative" src="icons/svg/Files/Selected-file.svg"></inline-svg> </q-avatar>
</q-avatar> </q-item-section>
</q-item-section> <q-item-section>
<q-item-section> <q-item-label class="font-pfb">考勤</q-item-label>
<q-item-label class="font-pfb">考勤</q-item-label> <q-item-label caption lines="1" class="remark-font">出勤,请假等相关功能入口</q-item-label>
<q-item-label caption lines="1" class="remark-font">出勤,请假等相关功能入口</q-item-label> </q-item-section>
</q-item-section> </q-item>
</q-item> <q-item class="q-my-sm q-pa-xs" clickable v-ripple @click="undefinedGongneng">
<q-item class="q-my-sm q-pa-xs" clickable v-ripple @click="undefinedGongneng"> <q-item-section avatar>
<q-item-section avatar> <q-avatar style="background-color: #F3F6F9;" rounded size="40px" text-color="secondary">
<q-avatar style="background-color: #F3F6F9;" rounded size="40px" text-color="secondary"> <inline-svg class="svg-icon svg-icon-primary" src="icons/svg/Communication/Mail-opened.svg"></inline-svg>
<inline-svg class="svg-icon svg-icon-primary" src="icons/svg/Communication/Mail-opened.svg"></inline-svg> </q-avatar>
</q-avatar> </q-item-section>
</q-item-section> <q-item-section>
<q-item-section> <q-item-label class="font-pfb">我的工作</q-item-label>
<q-item-label class="font-pfb">我的工作</q-item-label> <q-item-label caption lines="1" class="remark-font">OKR、教师备课相关功能入口</q-item-label>
<q-item-label caption lines="1" class="remark-font">OKR、教师备课相关功能入口</q-item-label> </q-item-section>
</q-item-section> </q-item>
</q-item> </q-list>
</q-list> </q-scroll-area>
</q-card> </q-card>
<!--<div class="dialog-out-close" @click="closeShenheForm" style="height:40px !important;border-top-left-radius: 4px !important;border-bottom-left-radius: 4px !important;"> <!--<div class="dialog-out-close" @click="closeShenheForm" style="height:40px !important;border-top-left-radius: 4px !important;border-bottom-left-radius: 4px !important;">
<q-icon name="iconfont icon-jujue1" size="26px" /> <q-icon name="iconfont icon-jujue1" size="26px" />
...@@ -117,13 +121,33 @@ export default { ...@@ -117,13 +121,33 @@ export default {
text: 'Field content', text: 'Field content',
reason: '', reason: '',
saveLoading: false, saveLoading: false,
saveType: 0 saveType: 0,
thumbStyle: {
right: '4px',
borderRadius: '5px',
backgroundColor: '#027be3',
width: '5px',
opacity: 0.75
},
barStyle: {
right: '2px',
borderRadius: '9px',
backgroundColor: '#027be3',
width: '9px',
opacity: 0.2
}
} }
}, },
methods: { methods: {
closeShenheForm() { closeShenheForm() {
this.$emit('close') this.$emit('close')
}, },
goUrlgeren(){//个人资料
// this.$router.push({
// path: '/user/personalData',
// })
},
undefinedGongneng() { undefinedGongneng() {
this.$q.dialog({ this.$q.dialog({
title: '功能提示', title: '功能提示',
......
...@@ -127,6 +127,9 @@ ...@@ -127,6 +127,9 @@
<q-input filled stack-label :dense="false" maxlength="8" v-model="addMsg.DefaultClassNum" label="默认班级人数" <q-input filled stack-label :dense="false" maxlength="8" v-model="addMsg.DefaultClassNum" label="默认班级人数"
ref="DefaultClassNum" class="q-pb-lg" @keyup.native="checkInteger(addMsg,'DefaultClassNum')" ref="DefaultClassNum" class="q-pb-lg" @keyup.native="checkInteger(addMsg,'DefaultClassNum')"
:rules="[val => !!val || '请填写默认班级人数']" /> :rules="[val => !!val || '请填写默认班级人数']" />
<q-input filled stack-label :dense="false" maxlength="8" v-model="addMsg.ClassNoPrefix" label="班级编码"
ref="ClassNoPrefix" class="q-pb-lg" @keyup.native="checkInteger(addMsg,'ClassNoPrefix')"
/>
<q-card-actions align="right" class="bg-white"> <q-card-actions align="right" class="bg-white">
<q-btn label="取消" flat color="grey-10" style="font-weight:400 !important" @click="persistent=false" /> <q-btn label="取消" flat color="grey-10" style="font-weight:400 !important" @click="persistent=false" />
...@@ -197,6 +200,12 @@ ...@@ -197,6 +200,12 @@
field: 'CompleteClassNum', field: 'CompleteClassNum',
align: 'left' align: 'left'
}, },
{
name: 'ClassNoPrefix',
label: '班级编码',
field: 'ClassNoPrefix',
align: 'left'
},
{ {
name: 'optioned', name: 'optioned',
label: '操作', label: '操作',
...@@ -333,6 +342,8 @@ ...@@ -333,6 +342,8 @@
this.addMsg.CTypeName = ''; this.addMsg.CTypeName = '';
this.addMsg.AddHourFee = ''; this.addMsg.AddHourFee = '';
this.addMsg.DefaultClassNum = ''; this.addMsg.DefaultClassNum = '';
this.addMsg.ClassNoPrefix = '';
}, },
//编辑班级类型 //编辑班级类型
EditClassType(obj) { EditClassType(obj) {
...@@ -342,6 +353,7 @@ ...@@ -342,6 +353,7 @@
this.addMsg.CTypeName = obj.CTypeName; this.addMsg.CTypeName = obj.CTypeName;
this.addMsg.AddHourFee = obj.AddHourFee; this.addMsg.AddHourFee = obj.AddHourFee;
this.addMsg.DefaultClassNum = obj.DefaultClassNum; this.addMsg.DefaultClassNum = obj.DefaultClassNum;
this.addMsg.ClassNoPrefix = obj.ClassNoPrefix;
}, },
//删除班级类型费用配置 //删除班级类型费用配置
deleteClassType(obj) { deleteClassType(obj) {
......
...@@ -68,6 +68,19 @@ ...@@ -68,6 +68,19 @@
option-label="TeacherName" v-model="msg.TeacherId" ref="TId" :options="TeacherList" label="老师" option-label="TeacherName" v-model="msg.TeacherId" ref="TId" :options="TeacherList" label="老师"
:dense="false" emit-value map-options /> :dense="false" emit-value map-options />
</div> </div>
<div class="col-3">
<q-select filled stack-label use-input input-debounce="0" option-value="ClassId" clearable @input="getList"
option-label="ClassName" v-model="msg.ClassId" :options="ClassList" label="班级" :dense="false" emit-value
map-options @filter="filterFn">
<template v-slot:no-option>
<q-item>
<q-item-section class="text-grey">
未找到相关数据
</q-item-section>
</q-item>
</template>
</q-select>
</div>
<div class="col-3"> <div class="col-3">
<q-input @input="handleCurrentChanges(1)" clearable standout="bg-primary text-white" v-model="msg.OrderId" label="订单号" <q-input @input="handleCurrentChanges(1)" clearable standout="bg-primary text-white" v-model="msg.OrderId" label="订单号"
@clear="handleCurrentChanges(1)" maxlength="20" /> @clear="handleCurrentChanges(1)" maxlength="20" />
...@@ -155,7 +168,8 @@ ...@@ -155,7 +168,8 @@
<script> <script>
import { import {
getSchoolDropdown, getSchoolDropdown,
getTeacherDropDownList getTeacherDropDownList,
getClassDropDownList
} from '../../api/school/index' } from '../../api/school/index'
import { import {
getStudentConsumptionHoursDetialPageList, getStudentConsumptionHoursDetialPageList,
...@@ -185,6 +199,7 @@ ...@@ -185,6 +199,7 @@
StudentName:'', StudentName:'',
OrderId:'', OrderId:'',
ContractNo:'', ContractNo:'',
ClassId:0,
}, },
datetype: '2', datetype: '2',
pageCount: 0, pageCount: 0,
...@@ -197,7 +212,9 @@ ...@@ -197,7 +212,9 @@
datetypelist: [ datetypelist: [
{ Id: '2', Name: '月份' }, { Id: '2', Name: '月份' },
{ Id: '1', Name: '年份' }, { Id: '1', Name: '年份' },
] ],
ClassList: [],
allClassList: [],
} }
}, },
created() { created() {
...@@ -226,6 +243,7 @@ ...@@ -226,6 +243,7 @@
this.getList();//获取提成周期列表 this.getList();//获取提成周期列表
this.getBranchList() this.getBranchList()
this.GetTeacherList();//老师下拉 this.GetTeacherList();//老师下拉
this.setClass()
}, },
methods: { methods: {
...@@ -257,6 +275,32 @@ ...@@ -257,6 +275,32 @@
} }
}) })
}, },
setClass(item) {//班级
this.isShowClass = true;
getClassDropDownList({
CourseId: 0,
IsAddDefault: 1, //添加默认选项
}).then(res => {
if (res.Code == 1) {
var jsonData = res.Data;
if (jsonData && jsonData.length > 0) {
this.ClassList = JSON.parse(JSON.stringify(jsonData));
this.allClassList = JSON.parse(JSON.stringify(jsonData));;
}
}
});
},
//筛选员工
filterFn(val, update) {
update(() => {
if (val === '') {
this.ClassList = JSON.parse(JSON.stringify(this.allClassList))
} else {
const needle = val.toLowerCase()
this.ClassList = this.allClassList.filter(v => v.ClassName.toLowerCase().indexOf(needle) > -1)
}
})
},
getBranchList() {//获取校区 getBranchList() {//获取校区
getSchoolDropdown({}).then(res => { getSchoolDropdown({}).then(res => {
......
...@@ -68,6 +68,20 @@ ...@@ -68,6 +68,20 @@
option-label="TeacherName" v-model="msg.TeacherId" ref="TId" :options="TeacherList" label="老师" option-label="TeacherName" v-model="msg.TeacherId" ref="TId" :options="TeacherList" label="老师"
:dense="false" emit-value map-options /> :dense="false" emit-value map-options />
</div> </div>
<div class="col-3">
<q-select filled stack-label use-input input-debounce="0" option-value="ClassId" clearable @input="getList"
option-label="ClassName" v-model="msg.ClassId" :options="ClassList" label="班级" :dense="false" emit-value
map-options @filter="filterFn">
<template v-slot:no-option>
<q-item>
<q-item-section class="text-grey">
未找到相关数据
</q-item-section>
</q-item>
</template>
</q-select>
</div>
<div class="col-3"> <div class="col-3">
<q-select filled stack-label @input="handleCurrentChanges(1)" option-value="Id" option-label="Name" v-model="datetype" ref="Id" <q-select filled stack-label @input="handleCurrentChanges(1)" option-value="Id" option-label="Name" v-model="datetype" ref="Id"
:options="datetypelist" label="日期类型" :dense="false" emit-value map-options /> :options="datetypelist" label="日期类型" :dense="false" emit-value map-options />
...@@ -94,7 +108,7 @@ ...@@ -94,7 +108,7 @@
</template> </template>
</q-field> </q-field>
</div> </div>
</div> </div>
</div> </div>
<div class="page-search row items-center" style="justify-content: space-between;"> <div class="page-search row items-center" style="justify-content: space-between;">
...@@ -128,8 +142,10 @@ ...@@ -128,8 +142,10 @@
</div> </div>
</template> </template>
<script> <script>
import { import {
getSchoolDropdown, getSchoolDropdown,
getClassDropDownList,
getTeacherDropDownList getTeacherDropDownList
} from '../../api/school/index' } from '../../api/school/index'
import { import {
...@@ -157,6 +173,7 @@ ...@@ -157,6 +173,7 @@
SchoolId: '-1', SchoolId: '-1',
StartMonth: '', StartMonth: '',
EndMonth: '', EndMonth: '',
ClassId:0,
}, },
datetype: '2', datetype: '2',
pageCount: 0, pageCount: 0,
...@@ -169,7 +186,9 @@ ...@@ -169,7 +186,9 @@
datetypelist: [ datetypelist: [
{ Id: '2', Name: '月份' }, { Id: '2', Name: '月份' },
{ Id: '1', Name: '年份' }, { Id: '1', Name: '年份' },
] ],
ClassList: [],
allClassList: [],
} }
}, },
created() { created() {
...@@ -198,7 +217,7 @@ ...@@ -198,7 +217,7 @@
this.getList();//获取提成周期列表 this.getList();//获取提成周期列表
this.getBranchList() this.getBranchList()
this.GetTeacherList();//老师下拉 this.GetTeacherList();//老师下拉
this.setClass()
}, },
methods: { methods: {
getList() { getList() {
...@@ -216,6 +235,32 @@ ...@@ -216,6 +235,32 @@
} }
}) })
}, },
setClass(item) {//班级
this.isShowClass = true;
getClassDropDownList({
CourseId: 0,
IsAddDefault: 1, //添加默认选项
}).then(res => {
if (res.Code == 1) {
var jsonData = res.Data;
if (jsonData && jsonData.length > 0) {
this.ClassList = JSON.parse(JSON.stringify(jsonData));
this.allClassList = JSON.parse(JSON.stringify(jsonData));;
}
}
});
},
//筛选员工
filterFn(val, update) {
update(() => {
if (val === '') {
this.ClassList = JSON.parse(JSON.stringify(this.allClassList))
} else {
const needle = val.toLowerCase()
this.ClassList = this.allClassList.filter(v => v.ClassName.toLowerCase().indexOf(needle) > -1)
}
})
},
//获取教师下拉 //获取教师下拉
GetTeacherList() { GetTeacherList() {
getTeacherDropDownList({}).then(res => { getTeacherDropDownList({}).then(res => {
......
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