讲师管理bug

This commit is contained in:
zhangsir
2024-12-16 11:13:34 +08:00
parent 6a32131c40
commit ca25e381db
13 changed files with 1152 additions and 1118 deletions

View File

@@ -2,7 +2,7 @@
<a-drawer <a-drawer
:visible="visible" :visible="visible"
:closable="false" :closable="false"
class="RouterFaceStus" class="largeDrawerStyle"
placement="right" placement="right"
width="70%" width="70%"
> >
@@ -301,14 +301,14 @@ const queryDrawer = () => {
<style lang="scss" scoped> <style lang="scss" scoped>
.RouterFaceStus { .largeDrawerStyle {
.drawerMains { .drawerMains {
min-width: 600px; min-width: 600px;
// margin: 0px 32px 0px 32px; // margin: 0px 32px 0px 32px;
overflow-x: auto; overflow-x: auto;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
padding:24px;
.headers { .headers {
height: 73px; height: 73px;
border-bottom: 1px solid #e8e8e8; border-bottom: 1px solid #e8e8e8;

View File

@@ -2,7 +2,7 @@
<a-drawer <a-drawer
:visible="visible" :visible="visible"
:closable="false" :closable="false"
class="RouterFaceStus" class="largeDrawerStyle"
placement="right" placement="right"
width="64%" width="64%"
:zIndex="1001" :zIndex="1001"
@@ -533,14 +533,14 @@ const config = () => {
} }
} }
.RouterFaceStus { .largeDrawerStyle {
.drawerMains { .drawerMains {
min-width: 600px; min-width: 600px;
// margin: 0px 32px 0px 32px; // margin: 0px 32px 0px 32px;
overflow-x: auto; overflow-x: auto;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
padding:24px;
.headers { .headers {
height: 73px; height: 73px;
border-bottom: 1px solid #e8e8e8; border-bottom: 1px solid #e8e8e8;

View File

@@ -1,6 +1,6 @@
<template> <template>
<a-drawer :visible="visible" placement="right" :closable="false" :maskClosable="false" <a-drawer :visible="visible" class="largeDrawerStyle" placement="right" :closable="false" :maskClosable="false"
width="80%" :title="false"> width="80%" :title="false">
<!-- 外部讲师查看详情 --> <!-- 外部讲师查看详情 -->
<div class="LookExternalLecturer"> <div class="LookExternalLecturer">
@@ -332,6 +332,7 @@ export default{
height: 100%; height: 100%;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
padding:24px;
.header { .header {
padding: 0px 32px; padding: 0px 32px;
height: 73px; height: 73px;

View File

@@ -1,5 +1,5 @@
<template> <template>
<a-drawer :visible="visible" placement="right" :closable="false" :maskClosable="false" <a-drawer class="largeDrawerStyle" :visible="visible" placement="right" :closable="false" :maskClosable="false"
width="80%" :title="false"> width="80%" :title="false">
<!-- 内部讲师查看详情 --> <!-- 内部讲师查看详情 -->
<div class="LookInsideLecturer"> <div class="LookInsideLecturer">
@@ -462,6 +462,7 @@ const handleup = ()=>{
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.LookInsideLecturer { .LookInsideLecturer {
padding:24px;
.header { .header {
padding: 0px 32px; padding: 0px 32px;
height: 73px; height: 73px;

View File

@@ -63,8 +63,9 @@
</div> </div>
</div> </div>
<!-- 弹窗组件 --> <!-- 弹窗组件 -->
<a-drawer v-model:visible="teacherdialog" placement="right" :closable="false" :maskClosable="false" <a-drawer class="largeDrawerStyle" v-model:visible="teacherdialog" placement="right" :closable="false" :maskClosable="false"
width="700px" :title="false"> width="700px" :title="false">
<div style="padding:24px">
<div class="headers" style="margin-top:-24px;width: 110%;margin-left: -24px;"> <div class="headers" style="margin-top:-24px;width: 110%;margin-left: -24px;">
<div class="headerTitle">{{ teacherdialogtitle }}</div> <div class="headerTitle">{{ teacherdialogtitle }}</div>
<img <img
@@ -156,7 +157,7 @@
<a-col :span="24"> <a-col :span="24">
<a-form-item label="初始授课时长" name="teaching"> <a-form-item label="初始授课时长" name="teaching">
<a-input v-model:value="formParam.teaching" style="width:100%; height: 40px; border-radius: 8px ; " <a-input v-model:value="formParam.teaching" style="width:100%; height: 40px; border-radius: 8px ; "
placeholder="0" allowClear showSearch suffix="分钟" @blur="clearNonNumber"> placeholder="0" allowClear showSearch suffix="分钟" @blur="clearNonNumber" @focus="focusTeaching">
</a-input> </a-input>
<!-- <span style="margin-left: 5px ;" v-if="formParam.teaching !== null">{{ (formParam.teaching / 60 <!-- <span style="margin-left: 5px ;" v-if="formParam.teaching !== null">{{ (formParam.teaching / 60
).toFixed(2) }}小时</span> ).toFixed(2) }}小时</span>
@@ -213,6 +214,7 @@
<a-button style="margin-right: 20px;" class="drabtn" type="primary" @click="createTeacherDialog" :loading="buttonLoading">保存 <a-button style="margin-right: 20px;" class="drabtn" type="primary" @click="createTeacherDialog" :loading="buttonLoading">保存
</a-button> </a-button>
</div> </div>
</div>
</a-drawer> </a-drawer>
<!-- 删除功能弹窗 --> <!-- 删除功能弹窗 -->
@@ -346,7 +348,7 @@ export default {
teacherType:'2', teacherType:'2',
photo:null, photo:null,
status:1, status:1,
teaching:'', teaching:0,
}, },
vf:true, vf:true,
searchParam: { searchParam: {
@@ -667,7 +669,7 @@ export default {
status:1, status:1,
teacherType:2, teacherType:2,
photo:null, photo:null,
teaching:null, teaching:0,
name: null, name: null,
mobile: null, mobile: null,
email: null, email: null,
@@ -682,20 +684,20 @@ export default {
const rules = { const rules = {
name: [{ required: true, message: '',log: '讲师不能为空' }], name: [{ required: true, message: '',log: '讲师不能为空' }],
supplier:[{ required: true, message: '',log:'供应商不能为空' }], supplier:[{ required: true, message: '',log:'供应商不能为空' }],
email:[ // email:[
{ // {
type: "email", // type: "email",
message: '',log: '请输入正确的邮箱地址', // message: '',log: '请输入正确的邮箱地址',
trigger: "blur" // trigger: "blur"
} // }
], // ],
mobile: [ // mobile: [
{ // {
pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/, // pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/,
message: '',log: "请输入正确的手机号码", // message: '',log: "请输入正确的手机号码",
trigger: "blur" // trigger: "blur"
} // }
] // ]
} }
const rule =()=>{ const rule =()=>{
if (state.formParam.name==null){ if (state.formParam.name==null){
@@ -755,6 +757,9 @@ export default {
} }
const sendEmail=()=>{ const sendEmail=()=>{
const reg = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.\w{2,}$/; const reg = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.\w{2,}$/;
if(!state.formParam.email){
return
}
if (!reg.test(state.formParam.email)) { if (!reg.test(state.formParam.email)) {
message.warning( '邮箱格式不正确') message.warning( '邮箱格式不正确')
state.formParam.email='' state.formParam.email=''
@@ -762,11 +767,15 @@ export default {
} }
} }
const clearNonNumber = () => { const clearNonNumber = () => {
state.formParam.teaching = state.formParam.teaching.replace(/\D/g, ''); state.formParam.teaching = state.formParam.teaching?.replace(/\D/g, '');
state.formParam.teaching = state.formParam.teaching.slice(0,8) state.formParam.teaching = state.formParam.teaching?.slice(0,8)
!state.formParam.teaching && (state.formParam.teaching = 0)
}
const focusTeaching = () => {
state.formParam.teaching == 0 && (state.formParam.teaching = null)
} }
const sendRemark=()=>{ const sendRemark=()=>{
state.formParam.remark = state.formParam.remark.replace(/\s/g, ''); state.formParam.remark = state.formParam.remark?.replace(/\s/g, '');
} }
const repl = (val) => { const repl = (val) => {
if(val){ if(val){
@@ -804,6 +813,7 @@ export default {
...toRefs(state), ...toRefs(state),
lecturerAdmin, lecturerAdmin,
clearNonNumber, clearNonNumber,
focusTeaching,
enterPressHadlerSearch, enterPressHadlerSearch,
validateField, validateField,
rules, rules,

View File

@@ -131,8 +131,9 @@
</div> </div>
</div> </div>
<!-- 弹窗组件 --> <!-- 弹窗组件 -->
<a-drawer v-model:visible="teacherdialog" placement="right" :maskClosable="false" :closable="false" <a-drawer class="largeDrawerStyle" v-model:visible="teacherdialog" placement="right" :maskClosable="false" :closable="false"
width="60%" :title="false"> width="60%" :title="false">
<div style="padding:24px;">
<div class="headers" style="margin-top:-24px;"> <div class="headers" style="margin-top:-24px;">
<div class="headerTitle">{{ teacherdialogtitle }}</div> <div class="headerTitle">{{ teacherdialogtitle }}</div>
<img <img
@@ -308,10 +309,12 @@
<a-button class="drabtn" type="primary" @click="createTeacherDialog" :loading="buttonLoading">保存 <a-button class="drabtn" type="primary" @click="createTeacherDialog" :loading="buttonLoading">保存
</a-button> </a-button>
</div> </div>
</div>
</a-drawer> </a-drawer>
<!-- 查看授课记录 --> <!-- 查看授课记录 -->
<a-drawer v-model:visible="teachingdialog" placement="right" :maskClosable="false" :closable="false" <a-drawer class="largeDrawerStyle" v-model:visible="teachingdialog" placement="right" :maskClosable="false" :closable="false"
width="60%" :title="false"> width="60%" :title="false">
<div style="padding:24px;">
<div class="headers" style="margin-top:-24px;"> <div class="headers" style="margin-top:-24px;">
<div class="headerTitle">查看讲师授课记录</div> <div class="headerTitle">查看讲师授课记录</div>
<img <img
@@ -355,6 +358,7 @@
<a-button class="drabtn" type="primary" @click="cancelTeachingDialog" :loading="buttonLoading">返回 <a-button class="drabtn" type="primary" @click="cancelTeachingDialog" :loading="buttonLoading">返回
</a-button> </a-button>
</div> --> </div> -->
</div>
</a-drawer> </a-drawer>
<!-- 删除功能弹窗 --> <!-- 删除功能弹窗 -->
<div> <div>

View File

@@ -113,8 +113,9 @@
</div> </div>
</div> </div>
<!-- 弹窗组件 --> <!-- 弹窗组件 -->
<a-drawer v-model:visible="teacherdialog" placement="right" :closable="false" :maskClosable="false" <a-drawer class="largeDrawerStyle" v-model:visible="teacherdialog" placement="right" :closable="false" :maskClosable="false"
width="700" :title="false"> width="700" :title="false">
<div style="padding:24px">
<div class="headers" style="margin-top:-24px;margin-left: -25px;width: 110%;"> <div class="headers" style="margin-top:-24px;margin-left: -25px;width: 110%;">
<div class="headerTitle" style="margin-left: 14px;">{{ teacherdialogtitle }}</div> <div class="headerTitle" style="margin-left: 14px;">{{ teacherdialogtitle }}</div>
<img <img
@@ -357,6 +358,7 @@
</a-button> </a-button>
</div> </div>
</div> </div>
</div>
</a-drawer> </a-drawer>
<!-- 删除功能弹窗 --> <!-- 删除功能弹窗 -->

View File

@@ -140,8 +140,9 @@
</div> </div>
</div> </div>
<!-- 弹窗组件 --> <!-- 弹窗组件 -->
<a-drawer v-model:visible="teacherdialog" :closable="false" placement="right" :maskClosable="false" <a-drawer class="largeDrawerStyle" v-model:visible="teacherdialog" :closable="false" placement="right" :maskClosable="false"
width="60%" :title="false"> width="60%" :title="false">
<div style="padding:24px;">
<div class="headers" style="margin-top:-24px;"> <div class="headers" style="margin-top:-24px;">
<div class="headerTitle">{{ teacherdialogtitle }}</div> <div class="headerTitle">{{ teacherdialogtitle }}</div>
<img <img
@@ -385,10 +386,12 @@
<a-button class="drabtn" type="primary" @click="createTeacherDialog" :loading="buttonLoading">保存 <a-button class="drabtn" type="primary" @click="createTeacherDialog" :loading="buttonLoading">保存
</a-button> </a-button>
</div> </div>
</div>
</a-drawer> </a-drawer>
<!--查看授课详情 --> <!--查看授课详情 -->
<a-drawer v-model:visible="teachingdialog" :closable="false" placement="right" :maskClosable="false" <a-drawer class="largeDrawerStyle" v-model:visible="teachingdialog" :closable="false" placement="right" :maskClosable="false"
width="60%" :title="false"> width="60%" :title="false">
<div style="padding:24px;">
<div class="headers" style="margin-top:-24px;"> <div class="headers" style="margin-top:-24px;">
<div class="headerTitle">查看讲师授课记录</div> <div class="headerTitle">查看讲师授课记录</div>
<img <img
@@ -455,6 +458,7 @@
<a-button class="drabtn" type="primary" @click="cancelTeachingDialog" :loading="buttonLoading">返回 <a-button class="drabtn" type="primary" @click="cancelTeachingDialog" :loading="buttonLoading">返回
</a-button> </a-button>
</div> --> </div> -->
</div>
</a-drawer> </a-drawer>
<!-- 删除功能弹窗 --> <!-- 删除功能弹窗 -->
<div> <div>

View File

@@ -1,5 +1,5 @@
<template> <template>
<a-drawer :visible="visible" placement="right" :closable="false" :maskClosable="false" <a-drawer class="largeDrawerStyle" :visible="visible" placement="right" :closable="false" :maskClosable="false"
width="60%" :title="false"> width="60%" :title="false">
<div class="appedit"> <div class="appedit">
<div class="header" style="margin-top: -24px;"> <div class="header" style="margin-top: -24px;">
@@ -74,8 +74,9 @@
<button class="btn2" @click="paramsDrawer">提交</button> <button class="btn2" @click="paramsDrawer">提交</button>
</div> </div>
</div> </div>
<a-drawer v-model:visible="teacherdialog" placement="right" :closable="false" :maskClosable="false" dropdown-style="drawaer" <a-drawer class="largeDrawerStyle" v-model:visible="teacherdialog" placement="right" :closable="false" :maskClosable="false" dropdown-style="drawaer"
width="60%" :title="false"> width="60%" :title="false">
<div style="padding:24px;">
<div class="headers" style="margin-top:-24px;"> <div class="headers" style="margin-top:-24px;">
<div class="headerTitle">编辑讲师费</div> <div class="headerTitle">编辑讲师费</div>
<img <img
@@ -388,6 +389,7 @@
<a-button class="drabtn" type="primary" @click="createTeacherDialog" :loading="buttonLoading">保存 <a-button class="drabtn" type="primary" @click="createTeacherDialog" :loading="buttonLoading">保存
</a-button> </a-button>
</div> </div>
</div>
</a-drawer> </a-drawer>
<a-modal <a-modal
:visible="modalVisible" :visible="modalVisible"
@@ -1197,7 +1199,7 @@ export default {
overflow-x: auto; overflow-x: auto;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
padding:24px;
.header { .header {
padding: 0px 15px; padding: 0px 15px;
height: 68px; height: 68px;

View File

@@ -120,8 +120,9 @@
</div> </div>
<!-- 弹窗组件 --> <!-- 弹窗组件 -->
<!--查看讲师费详情 --> <!--查看讲师费详情 -->
<a-drawer :closable="false" v-model:visible="teachingdialog" placement="right" <a-drawer class="largeDrawerStyle" :closable="false" v-model:visible="teachingdialog" placement="right"
@closa="cancelTeachingDialog" width="60%" :title="false"> @closa="cancelTeachingDialog" width="60%" :title="false">
<div style="padding:24px;">
<div class="headers" style="margin-top:-24px;"> <div class="headers" style="margin-top:-24px;">
<div class="headerTitle">汇总讲师费详情</div> <div class="headerTitle">汇总讲师费详情</div>
<img <img
@@ -188,6 +189,7 @@
</a-button> </a-button>
<!-- <a-button class="drabtn" @click="cancelTeachingDialog" type="primary" danger>拒绝</a-button> --> <!-- <a-button class="drabtn" @click="cancelTeachingDialog" type="primary" danger>拒绝</a-button> -->
</div> </div>
</div>
</a-drawer> </a-drawer>
<!-- 修改状态功能弹窗 --> <!-- 修改状态功能弹窗 -->
<div> <div>

View File

@@ -156,8 +156,9 @@
</div> </div>
</div> </div>
<!-- 弹窗组件 --> <!-- 弹窗组件 -->
<a-drawer v-model:visible="teacherdialog" placement="right" :closable="false" :maskClosable="false" dropdown-style="drawaer" <a-drawer class="largeDrawerStyle" v-model:visible="teacherdialog" placement="right" :closable="false" :maskClosable="false" dropdown-style="drawaer"
width="60%" :title="false"> width="60%" :title="false">
<div style="padding:24px;">
<div class="headers" style="margin-top:-24px;"> <div class="headers" style="margin-top:-24px;">
<div class="headerTitle">{{ teacherdialogtitle }}</div> <div class="headerTitle">{{ teacherdialogtitle }}</div>
<img <img
@@ -470,6 +471,7 @@
<a-button class="drabtn" type="primary" @click="createTeacherDialog" :loading="buttonLoading">保存 <a-button class="drabtn" type="primary" @click="createTeacherDialog" :loading="buttonLoading">保存
</a-button> </a-button>
</div> </div>
</div>
</a-drawer> </a-drawer>
<!-- 修改状态功能弹窗 --> <!-- 修改状态功能弹窗 -->
<div> <div>
@@ -499,8 +501,9 @@
</a-modal> </a-modal>
</div> </div>
<!-- <div> <Upload/> </div> --> <!-- <div> <Upload/> </div> -->
<a-drawer v-model:visible="teachingdialog" placement="right" <a-drawer class="largeDrawerStyle" v-model:visible="teachingdialog" placement="right"
:closable="false" width="60%" :title="false"> :closable="false" width="60%" :title="false">
<div style="padding:24px;">
<div class="headers" style="margin-top:-24px;"> <div class="headers" style="margin-top:-24px;">
<div class="headerTitle">查看讲师费用</div> <div class="headerTitle">查看讲师费用</div>
<img <img
@@ -556,6 +559,7 @@
<a-button class="drabtn" @click="cancelTeachingDialog(false)" :loading="buttonLoading">取消 <a-button class="drabtn" @click="cancelTeachingDialog(false)" :loading="buttonLoading">取消
</a-button> </a-button>
</div> --> </div> -->
</div>
</a-drawer> </a-drawer>
<ImportWork v-model:showWork="showWork" :template="'讲师费导入模板'" :url="'/admin/export/importTeacherExpense'" :fileName="uploadFile" :title="title"></ImportWork> <ImportWork v-model:showWork="showWork" :template="'讲师费导入模板'" :url="'/admin/export/importTeacherExpense'" :fileName="uploadFile" :title="title"></ImportWork>
</div> </div>

View File

@@ -99,8 +99,9 @@
</div> </div>
</div> </div>
<!-- 抽屉 --> <!-- 抽屉 -->
<a-drawer v-model:visible="opendrawer" placement="right" <a-drawer class="largeDrawerStyle" v-model:visible="opendrawer" placement="right"
@closa="cancelTeachingDialog" :maskClosable="true" width="60%" title="查看详情"> @closa="cancelTeachingDialog" :maskClosable="true" width="60%" title="查看详情">
<div style="padding:24px;">
<a-form layout="inline"> <a-form layout="inline">
<a-form-item class="select"> <a-form-item class="select">
<a-input v-model:value="drawer.name" style="width: 260px; height: 40px; border-radius: 8px" <a-input v-model:value="drawer.name" style="width: 260px; height: 40px; border-radius: 8px"
@@ -137,6 +138,7 @@
<a-button class="drabtn" type="primary" @click="cancelTeachingDialog" :loading="buttonLoading">返回 <a-button class="drabtn" type="primary" @click="cancelTeachingDialog" :loading="buttonLoading">返回
</a-button> </a-button>
</div> </div>
</div>
</a-drawer> </a-drawer>
</div> </div>
</template> </template>

View File

@@ -88,7 +88,8 @@
</a-modal> </a-modal>
</div> </div>
<!-- 抽屉 --> <!-- 抽屉 -->
<a-drawer v-model:visible="teacherdialog" :closable="false" :title="false" placement="right" width="60%" :maskClosable="false" > <a-drawer class="largeDrawerStyle" v-model:visible="teacherdialog" :closable="false" :title="false" placement="right" width="60%" :maskClosable="false" >
<div style="padding:24px;">
<div class="headers" style="margin-top: -24px"> <div class="headers" style="margin-top: -24px">
<div class="headerTitle">{{ teacherdialogtitle }}</div> <div class="headerTitle">{{ teacherdialogtitle }}</div>
<img <img
@@ -285,6 +286,7 @@
<a-button class="drabtn" type="primary" @click="createTeacherDialog(0)" :loading="buttonLoading">保存</a-button> <a-button class="drabtn" type="primary" @click="createTeacherDialog(0)" :loading="buttonLoading">保存</a-button>
<a-button v-if="editParams||editIndex>1" class="drabtn" type="primary" @click="createTeacherDialog(1)" :loading="buttonLoading">提交</a-button> <a-button v-if="editParams||editIndex>1" class="drabtn" type="primary" @click="createTeacherDialog(1)" :loading="buttonLoading">提交</a-button>
</div> </div>
</div>
</a-drawer> </a-drawer>
<AddOrgContent :Addtitle="'选择组织'" v-model:showContent="showContent" v-model:AddContentList="formParam.affiliationOrgList" /> <AddOrgContent :Addtitle="'选择组织'" v-model:showContent="showContent" v-model:AddContentList="formParam.affiliationOrgList" />
</div> </div>