整体样式调整1.1

This commit is contained in:
wangxuemei
2024-07-18 16:23:26 +08:00
parent fd3ef9de10
commit 768b395d4e
7 changed files with 570 additions and 104 deletions

View File

@@ -6,4 +6,6 @@ export const queryTeacherFeeMonthly = (obj) => http.post('teacher/fee/queryTeach
////讲师费月度统计--明细
export const getTeacherFeeDetailListByTeacherNo = (params) => http.get('teacher/fee/getTeacherFeeDetailListByTeacherNo',{ params })
//讲师费明细
export const getTeacherFeeListByTeacherNo = (obj) => http.post('teacher/fee/getTeacherFeeListByTeacherNo', obj)
export const getTeacherFeeListByTeacherNo = (obj) => http.post('teacher/fee/getTeacherFeeListByTeacherNo', obj)
//讲师费汇总上月数据
export const getPreviousTeacherfee = (params) => http.get('teacher/fee/getPreviousTeacherFee', {params})

View File

@@ -69,18 +69,25 @@
</div>
</div>
<!-- 弹窗组件 -->
<a-modal :visible="teacherdialog" :title="teacherdialogtitle" @ok="closeModal2" :footer="null" :closable="false"
wrapClassName="doublepro" width="774px" height="476px">
<div style="cursor: pointer; margin-right: 32px;float: right; margin-top: -40px;" @click="cancelTeacherDialog">
<img style="width: 22px; height: 22px" src="../../assets/images/basicinfo/close22.png" />
</div>
<a-modal :visible="teacherdialog" @ok="closeModal2" :footer="null" :closable="false"
wrapClassName="CreatePath" >
<div class="out">
<div class="top">
<div class="topc">{{teacherdialogtitle }}</div>
<div @click="cancelTeacherDialog" style="margin-left: 650px; cursor: pointer">
<img
style="width: 20px; height: 20px"
src="../../assets/images/basicinfo/close.png"
/>
</div>
</div>
<div style="padding-bottom: 15px;">
<div class="headerLeft" style="margin-left: 33px">
<a-button @click="particulars">个人详情</a-button>
<a-button @click="particulars" v-if="teacherdialog1 == 1">个人详情</a-button>
<a-button @click="teacherrecords" v-if="teacherdialog1 == 1">授课记录</a-button>
</div>
<!-- 个人详情 -->
<div style="border: 1px rgb(177, 177, 177) solid; margin-left: 33px; margin-right: 33px; margin-bottom: 33px;"
<div style=" margin-left: 33px; margin-right: 33px; margin-bottom: 33px;"
v-show="tagsshow == 1">
<div class="ExternalLecturer">
<div class="filter">
@@ -130,13 +137,18 @@
<span v-if="teacherdialog1 == 1" style="display: block; width: 500px;">{{ formParam.description
}}</span>
</div>
<div class="select">
<span style="display:inline-block ;width:80px ;text-align:center ">备注 :</span>
<a-input type="textarea" v-if="teacherdialog1 == 0" v-model:value="formParam.remark"
style="width:500px; height: 80px; ">
</a-input>
<!-- 备注 -->
<div style="width: 834px;height: 1px;"></div>
<span style="display:inline-block ;width:115px ;text-align:center ">备注 :</span>
<a-textarea v-if="teacherdialog1 == 0"
v-model:value="formParam.remark"
showCount
:maxlength="200"
style="width: 500px; height: 100px; border-radius: 8px"
placeholder="请输入"/>
<span v-if="teacherdialog1 == 1" class=display1>{{ formParam.remark }}</span>
</div>
<div class="del_btnbox" v-if="teacherdialog1 == 0">
<a-button class="del_btn btn1" @click="cancelTeacherDialog" style="margin-right: 32px;">取消</a-button>
<a-button class="del_btn btn2" @click="createTeacherDialog" :loading="buttonLoading">保存
@@ -161,6 +173,7 @@
class="pagination" @change="teacherchangePagination" />
</div>
</div>
</div>
</a-modal>
<!-- 删除功能弹窗 -->
<div>
@@ -700,7 +713,7 @@ export default {
},
};
</script>
<style lang="scss">
<style lang="scss" scoped>
//导出按钮icon
.daochu {
width: 16px;
@@ -1148,4 +1161,60 @@ export default {
}
}
}
.CreatePath {
.out {
z-index: 9999;
display: block;
position: absolute;
top: 90px;
width:1000px;
// height: 525px;
background-color: #fff;
box-shadow: 0 0 10px rgba(118, 136, 166, 0.21);
left: 50%;
top:400px;
transform: translate(-50%, -50%);
.top {
width: 100%;
height: 68px;
background: linear-gradient(
rgba(78, 166, 255, 0.2) 0%,
rgba(78, 166, 255, 0) 100%
);
display: flex;
align-items: center;
.topimg {
width: 18px;
height: 18px;
margin-left: 27px;
margin-top: -2px;
}
.topc {
color: #000000;
font-size: 16px;
margin-left: 8px;
}
}
.mid {
width: 100%;
height: 100%;
background-color: #fff;
display: flex;
flex-direction: column;
align-items: center;
.d {
// margin-top: 8px;
// color: #ff4e4e;
margin-left: -5px;
}
}
}
}
</style>

View File

@@ -86,15 +86,23 @@
</div>
</div>
<!-- 弹窗组件 -->
<a-modal :visible="teacherdialog" :title="teacherdialogtitle" @ok="closeModal2" :footer="null" :closable="false"
wrapClassName="doublepro" width="900px" height="476px">
<div style="cursor: pointer; margin-right: 32px;float: right; margin-top: -40px;" @click="cancelTeacherDialog">
<img style="width: 22px; height: 22px" src="../../assets/images/basicinfo/close22.png" />
</div>
<a-modal :visible="teacherdialog" @ok="closeModal2" :footer="null" :closable="false"
wrapClassName="CreatePath">
<div class="out">
<div class="top">
<!-- <img class="topimg" src="../../assets/images/courseManage/add1.png" /> -->
<div class="topc">{{teacherdialogtitle }}</div>
<div @click="cancelTeacherDialog" style="margin-left: 650px; cursor: pointer">
<img
style="width: 20px; height: 20px"
src="../../assets/images/basicinfo/close.png"
/>
</div>
</div>
<div style="padding-bottom: 15px;">
<!-- 边框 -->
<div style="border: 1px rgb(177, 177, 177) solid; margin-left: 33px; margin-right: 33px; margin-bottom: 33px;">
<div style=" margin-left: 33px; margin-right: 33px; margin-bottom: 33px;">
<div class="ExternalTeaching">
<div class="filter">
<div class="filterItems">
@@ -198,9 +206,12 @@
<!-- 备注 -->
<div style="width: 834px;height: 1px;"></div>
<span style="display:inline-block ;width:115px ;text-align:center ">备注 :</span>
<a-input v-if="teacherdialog1 == 0" v-model="formParam.remark"
style="width: 550px ;display:inline-block ;
height: 80px;" />
<a-textarea v-if="teacherdialog1 == 0"
v-model:value="formParam.remark"
showCount
:maxlength="200"
style="width: 500px; height: 100px; border-radius: 8px"
placeholder="请输入"/>
<span v-if="teacherdialog1 == 1" class=display1>{{ formParam.remark }}</span>
<div class="del_btnbox" v-if="teacherdialog1 == 0">
<a-button class="del_btn btn1" @click="cancelTeacherDialog" style="margin-right: 32px;">取消</a-button>
@@ -213,6 +224,7 @@
</div>
</div>
</div>
</a-modal>
<!-- 删除功能弹窗 -->
<div>
@@ -497,7 +509,7 @@ export default {
const handleModify = (record) => {
state.teacherdialog1 = 0
state.teacherdialog = true;
state.teacherdialogtitle = '查看详情'
state.teacherdialogtitle = '修改授课记录'
TeacherSystem(record)
}
//保存
@@ -653,7 +665,7 @@ export default {
},
};
</script>
<style lang="scss">
<style lang="scss" scoped>
//导出按钮icon
.daochu {
@@ -1109,4 +1121,60 @@ export default {
}
}
}
.CreatePath {
.out {
z-index: 9999;
display: block;
position: absolute;
top: 90px;
width:850px !important;
height:600px;
background-color: #fff;
box-shadow: 0 0 10px rgba(118, 136, 166, 0.21);
left: 50%;
top:300px;
transform: translate(-50%, -50%);
.top {
width: 100%;
height: 68px;
background: linear-gradient(
rgba(78, 166, 255, 0.2) 0%,
rgba(78, 166, 255, 0) 100%
);
display: flex;
align-items: center;
.topimg {
width: 18px;
height: 18px;
margin-left: 27px;
margin-top: -2px;
}
.topc {
color: #000000;
font-size: 16px;
margin-left: 8px;
}
}
.mid {
width: 100%;
height: 100%;
background-color: #fff;
display: flex;
flex-direction: column;
align-items: center;
.d {
// margin-top: 8px;
// color: #ff4e4e;
margin-left: -5px;
}
}
}
}
</style>

View File

@@ -106,22 +106,27 @@
</div>
</div>
<!-- 弹窗组件 -->
<a-modal :visible="teacherdialog" :title="teacherdialogtitle" @ok="closeModal2" :footer="null" :closable="false"
wrapClassName="doublepro" width="774px" height="476px">
<div style="cursor: pointer; margin-right: 32px;float: right; margin-top: -40px;" @click="cancelTeacherDialog">
<a-modal :visible="teacherdialog" @ok="closeModal2" :footer="null" :closable="false" wrapClassName="CreatePath"
>
<div class="out">
<div class="top">
<!-- <img class="topimg" src="../../assets/images/courseManage/add1.png" /> -->
<div class="topc">{{teacherdialogtitle }}</div>
<div @click="cancelTeacherDialog" style="margin-left: 650px; cursor: pointer">
<img
style="width: 22px; height: 22px"
src="../../assets/images/basicinfo/close22.png"
style="width: 20px; height: 20px"
src="../../assets/images/basicinfo/close.png"
/>
</div>
<div style="padding-bottom: 15px;" >
</div>
<div class="mid clearfix">
<div class="headerLeft" style="margin-left: 33px" >
<a-button @click ="particulars">个人详情</a-button>
<a-button @click ="particulars" v-if="teacherdialog1 == 1" >个人详情</a-button>
<a-button @click ="teacherrecords" v-if="teacherdialog1 == 1" >授课记录</a-button>
<a-button @click ="promotionrecords" v-if="teacherdialog1 == 1" >晋级记录</a-button>
</div>
<!-- 个人详情 -->
<div style="border: 1px rgb(177, 177, 177) solid; margin-left: 33px; margin-right: 33px; margin-bottom: 33px;" v-show="tagsshow==1">
<div v-show="tagsshow==1">
<div class="InsideLecturer" >
<div class="filter">
<div class="filterItems">
@@ -229,7 +234,7 @@
<span style="display:inline-block ;width:80px ; text-align:center ">讲师介绍 :</span>
</div>
<Editor v-if="teacherdialog1 == 0" v-model="formParam.description"
style="width: 500px ;display:inline-block ; margin-top:-50px ;margin-left:80px " />
style="width: 900px ;display:inline-block ; margin-top:-50px ;margin-left:80px " />
<span v-if="teacherdialog1 == 1" style="display: block; width: 500px;">{{ formParam.description }}</span>
</div>
<div class="select">
@@ -238,7 +243,7 @@
<span style="display:inline-block ;width:80px ; text-align:center ">工作经历 :</span>
</div>
<Editor v-if="teacherdialog1 == 0" v-model="formParam.workExperience"
style="width: 500px ;display:inline-block ; margin-top:-50px ;margin-left:80px " />
style="width: 900px ;display:inline-block ; margin-top:-50px ;margin-left:80px " />
<span v-if="teacherdialog1 == 1" style="display: block; width: 500px;">{{ formParam.one }}</span>
</div>
<div class="select">
@@ -247,7 +252,7 @@
<span style="display:inline-block ;width:80px ; text-align:center ">擅长课程 :</span>
</div>
<Editor v-if="teacherdialog1 == 0" v-model="formParam.courses"
style="width: 500px ;display:inline-block ; margin-top:-50px ;margin-left:80px " />
style="width: 900px ;display:inline-block ; margin-top:-50px ;margin-left:80px " />
<span v-if="teacherdialog1 == 1" style="display: block; width: 500px;">{{ formParam.one }}</span>
</div>
<div class="select">
@@ -321,6 +326,7 @@
</div>
</div>
</div>
</div>
</a-modal>
<!-- 删除功能弹窗 -->
<div>
@@ -380,9 +386,11 @@
</div>
</template>
<script lang="jsx">
import { reactive, toRefs, ref ,watch} from "vue";
import { reactive, toRefs, ref ,watch ,shallowRef ,onUnmounted} from "vue";
import Editor from "@/components/project/Editor";
import Upload from "@/components/project/Upload";
// import { Editor, Toolbar } from "@wangeditor/editor-for-vue";
import { fileUp } from "../../api/indexEval";
import { message } from "ant-design-vue";
import {getTeacherSystemList , getTeacherList,getTeacherPayRollPriceList, getLevel,insertTeacher,deleteInTeacher,updateInTeacher,getTeacherById, updateTeacherState,getTeacherCourseList , getTeacherExpertise,getTeacherExpertiseByPid ,infoteacher,getTeacherLogList } from "../../api/Lecturer";
// import {getProjSt} from "../../api/indexProjStu";
@@ -392,6 +400,7 @@ export default {
components: {
// AddTeacher,
Editor,
// Toolbar,
Upload
},
setup() {
@@ -1179,8 +1188,57 @@ export default {
// ...state.searchParam
// }, `project_${new Date().getTime()}.xlsx` )
}
//富文本编辑器
// 编辑器实例,必须用 shallowRef
const editorRef = shallowRef();
// 内容 HTML
const valueHtml = ref("");
const toolbarConfig = {
excludeKeys: ["insertVideo", "insertImage"],
};
const editorConfig = { placeholder: "请输入内容...", MENU_CONF: {} };
// editorConfig.MENU_CONF["uploadImage"] = {
// // 自定义上传
// async customUpload(file, insertFn) {
// const formData = new FormData();
// formData.append("file", file);
// fileUp(formData).then((res) => {
// if (res.data.code === 200) {
// // 最后插入图片 url alt href
// console.log(
// "上传图片结果",
// process.env.VUE_APP_FILE_PATH + res.data.data
// );
// insertFn(
// process.env.VUE_APP_FILE_PATH + res.data.data,
// file.name,
// res.data.data
// );
// }
// });
// },
// };
const handleCreated = (editor) => {
editorRef.value = editor; // 记录 editor 实例,重要!
};
// const handleDestory = () => {
// const editor = editorRef.value;
// if (editor == null) return;
// editor.destroy();
// };
// 组件销毁时,也及时销毁编辑器
onUnmounted(() => {
console.log("组件销毁时,也及时销毁编辑器");
// handleDestory();
});
return {
...toRefs(state),
// editorRef,
// valueHtml,
// toolbarConfig,
// handleCreated,
// editorConfig,
// mode: "simple", // 或 'simple'
changeSelect,
handleExport,
LecturerSystemList,
@@ -1232,7 +1290,7 @@ export default {
},
};
</script>
<style lang="scss">
<style lang="scss" scoped>
//导出按钮icon
.daochu {
width: 16px;
@@ -1581,14 +1639,14 @@ export default {
.delete {
z-index: 9999;
width: 424px;
width: 424px ;
background: #ffffff;
box-shadow: 0px 1px 35px 0px rgba(118, 136, 166, 0.21);
border-radius: 4px;
position: absolute;
left: 50%;
top: 10%;
transform: translate(-50%, -50%);
// transform: translate(-50%, -50%);
.del_header {
position: absolute;
@@ -1680,21 +1738,61 @@ export default {
}
}
}
</style>
.CreatePath {
.out {
z-index: 9999;
display: block;
position: absolute;
top: 90px;
width:1080px !important;
height: 650px;
overflow: auto;
background-color: #fff;
box-shadow: 0 0 10px rgba(118, 136, 166, 0.21);
left: 50%;
top:300px;
transform: translate(-50%, -50%);
.top {
width: 100%;
height: 68px;
background: linear-gradient(
rgba(78, 166, 255, 0.2) 0%,
rgba(78, 166, 255, 0) 100%
);
display: flex;
align-items: center;
<!-- //二级页面翻页
const feeMonthlyPagination = (page,pageSize) => {
state.queryFeeMonthly.pageNo = page;
TeacherSystem();
};
const handleLooka= (record)=>{
.topimg {
width: 18px;
height: 18px;
margin-left: 27px;
margin-top: -2px;
}
} -->
<!-- tableLoading:false,
tableLoadinga:false,
tableDataTotal: -1,//table列表总条数
feeMonthlytableDataTotal:-1,//二级列表总条数 -->
<!-- -->
.topc {
color: #000000;
font-size: 16px;
margin-left: 8px;
}
}
.mid {
width: 100%;
height: 100%;
background-color: #fff;
display: flex;
flex-direction: column;
align-items: center;
.d {
// margin-top: 8px;
// color: #ff4e4e;
margin-left: -5px;
}
}
}
}
</style>

View File

@@ -113,16 +113,21 @@
</div>
</div>
<!-- 弹窗组件 -->
<a-modal :visible="teacherdialog" :title="teacherdialogtitle" @ok="closeModal2" :footer="null" :closable="false"
wrapClassName="doublepro" width="834px" height="476px">
<div style="cursor: pointer; margin-right: 32px;float: right; margin-top: -40px;" @click="cancelTeacherDialog">
<a-modal :visible="teacherdialog" @ok="closeModal2" :footer="null" :closable="false" wrapClassName="CreatePath"
>
<div class="out">
<div class="top">
<!-- <img class="topimg" src="../../assets/images/courseManage/add1.png" /> -->
<div class="topc">{{teacherdialogtitle }}</div>
<div @click="cancelTeacherDialog" style="margin-left: 650px; cursor: pointer">
<img
style="width: 22px; height: 22px"
src="../../assets/images/basicinfo/close22.png"
style="width: 20px; height: 20px"
src="../../assets/images/basicinfo/close.png"
/>
</div>
</div>
<div style="padding-bottom: 15px;" >
<div style="border: 1px rgb(177, 177, 177) solid; margin-left: 33px; margin-right: 33px; margin-bottom: 33px;" >
<div style=" margin-left: 33px; margin-right: 33px; margin-bottom: 33px;" >
<div class="InsideTeaching" >
<div class="filter">
<div class="filterItems">
@@ -321,9 +326,15 @@
<!-- 备注 -->
<div style="width: 834px;height: 1px;"></div>
<span style="display:inline-block ;width:115px ;text-align:center ">备注 :</span>
<a-input type="textarea" v-if="teacherdialog1 == 0" v-model:value="formParam.remark"
style="width:550px; height: 115px; ">
</a-input>
<a-textarea v-if="teacherdialog1 == 0"
v-model:value="formParam.remark"
showCount
:maxlength="200"
style="width: 500px; height: 100px; border-radius: 8px"
placeholder="请输入"/>
<!-- <span style="color: #c7cbd2" v-if="teacherdialog1 == 0">
{{formParam.remark.length }}/200
</span> -->
<span v-if="teacherdialog1 == 1" class=display1>{{ formParam.remark }}</span>
<div class="del_btnbox" v-if="teacherdialog1 == 0">
<a-button class="del_btn btn1" @click="cancelTeacherDialog" style="margin-right: 32px;">取消</a-button>
@@ -336,6 +347,7 @@
</div>
</div>
</div>
</a-modal>
<!-- 删除功能弹窗 -->
<div>
@@ -692,7 +704,7 @@ export default {
const handleModify = (record) => {
state.teacherdialog1 = 0
state.teacherdialog = true;
state.teacherdialogtitle = '修改信息'
state.teacherdialogtitle = '修改授课记录'
TeacherSystem(record)
}
//保存
@@ -861,7 +873,7 @@ export default {
},
};
</script>
<style lang="scss">
<style lang="scss" scoped>
//导出按钮icon
.daochu {
width: 16px;
@@ -1314,4 +1326,60 @@ export default {
}
}
}
.CreatePath {
.out {
z-index: 9999;
display: block;
position: absolute;
top: 90px;
width:850px !important;
height: 750px;
background-color: #fff;
box-shadow: 0 0 10px rgba(118, 136, 166, 0.21);
left: 50%;
top:300px;
transform: translate(-50%, -50%);
.top {
width: 100%;
height: 68px;
background: linear-gradient(
rgba(78, 166, 255, 0.2) 0%,
rgba(78, 166, 255, 0) 100%
);
display: flex;
align-items: center;
.topimg {
width: 18px;
height: 18px;
margin-left: 27px;
margin-top: -2px;
}
.topc {
color: #000000;
font-size: 16px;
margin-left: 8px;
}
}
.mid {
width: 100%;
height: 100%;
background-color: #fff;
display: flex;
flex-direction: column;
align-items: center;
.d {
// margin-top: 8px;
// color: #ff4e4e;
margin-left: -5px;
}
}
}
}
</style>

View File

@@ -128,16 +128,21 @@
</div>
</div>
<!-- 弹窗组件 -->
<a-modal :visible="teacherdialog" :title="teacherdialogtitle" @ok="closeModal2" :footer="null" :closable="false"
wrapClassName="doublepro" width="774px" height="476px">
<div style="cursor: pointer; margin-right: 32px;float: right; margin-top: -40px;" @click="cancelTeacherDialog">
<a-modal :visible="teacherdialog" @ok="closeModal2" :footer="null" :closable="false" wrapClassName="CreatePath"
>
<div class="out">
<div class="top">
<!-- <img class="topimg" src="../../assets/images/courseManage/add1.png" /> -->
<div class="topc">{{teacherdialogtitle }}</div>
<div @click="cancelTeacherDialog" style="margin-left: 650px; cursor: pointer">
<img
style="width: 22px; height: 22px"
src="../../assets/images/basicinfo/close22.png"
style="width: 20px; height: 20px"
src="../../assets/images/basicinfo/close.png"
/>
</div>
</div>
<div style="padding-bottom: 15px;" >
<div style="border: 1px rgb(177, 177, 177) solid; margin-left: 33px; margin-right: 33px; margin-bottom: 33px;" v-show="tagsshow==1">
<div style=" margin-left: 33px; margin-right: 33px; margin-bottom: 33px;" v-show="tagsshow==1">
<div class="LecturerFeeManagement" >
<div class="filter">
<div class="filterItems">
@@ -371,9 +376,12 @@
<!-- 备注 -->
<div style="width: 834px;height: 1px;"></div>
<span style="display:inline-block ;width:80px ;text-align:center ">备注 :</span>
<a-input type="textarea" v-if="teacherdialog1 == 0" v-model:value="formParam.remark"
style="width:550px; height: 115px; ">
</a-input>
<a-textarea v-if="teacherdialog1 == 0"
v-model:value="formParam.remark"
showCount
:maxlength="200"
style="width: 500px; height: 100px; border-radius: 8px"
placeholder="请输入"/>
<span v-if="teacherdialog1 == 1" class=display1>{{ formParam.remark }}</span>
<div style="width: 100%; height: 1px ;"></div>
<div style="padding: 10px 0" v-if="teacherdialog1 == 1" >
@@ -395,6 +403,7 @@
</div>
</div>
</div>
</div>
</a-modal>
<!-- 删除功能弹窗 -->
<!-- <div>
@@ -1080,7 +1089,7 @@ export default {
},
};
</script>
<style lang="scss">
<style lang="scss" scoped>
//导出按钮icon
.daochu {
width: 16px;
@@ -1528,4 +1537,60 @@ export default {
}
}
}
.CreatePath {
.out {
z-index: 9999;
display: block;
position: absolute;
top: 90px;
width:800px !important;
height:750px;
background-color: #fff;
box-shadow: 0 0 10px rgba(118, 136, 166, 0.21);
left: 50%;
top:300px ;
transform: translate(-50%, -50%);
.top {
width: 100%;
height: 68px;
background: linear-gradient(
rgba(78, 166, 255, 0.2) 0%,
rgba(78, 166, 255, 0) 100%
);
display: flex;
align-items: center;
.topimg {
width: 18px;
height: 18px;
margin-left: 27px;
margin-top: -2px;
}
.topc {
color: #000000;
font-size: 16px;
margin-left: 8px;
}
}
.mid {
width: 100%;
height: 100%;
background-color: #fff;
display: flex;
flex-direction: column;
align-items: center;
.d {
// margin-top: 8px;
// color: #ff4e4e;
margin-left: -5px;
}
}
}
}
</style>

View File

@@ -7,7 +7,7 @@
<div class="filter">
<div class="filterItems">
<div class="select addTimeBox">
<a-date-picker v-model:value="searchParam.startDate" placeholder="开始日期" format="YYYY-MM-DD"
<!-- <a-date-picker v-model:value="searchParam.startDate" placeholder="开始日期" format="YYYY-MM-DD"
allowClear
style="width: 230px">
</a-date-picker>
@@ -15,14 +15,21 @@
<a-date-picker v-model:value="searchParam.endDate" placeholder="结束日期" format="YYYY-MM-DD"
allowClear
style="width: 230px">
</a-date-picker>
</a-date-picker> -->
<div class="addTime">创建时间</div>
<a-range-picker
v-model:value="searchdate"
separator="至"
:placeholder="[' 开始时间', ' 结束时间']"
@change="searchTimeChange"
/>
</div>
<div style="display: flex; margin-bottom: 20px">
<div class="btnn btn1" @click="searchSubmit">
<div class="search"></div>
<div class="btnText">搜索</div>
</div>
<div class="btn btn2" @click="searchReset">
<div class="btn btn2" @click="searchResetPrevious">
<div class="search"></div>
<div class="btnText">重新汇总上月讲师费</div>
</div>
@@ -54,11 +61,18 @@
</div>
<!-- 二级页面弹窗组件 -->
<a-modal :visible="teacherdialog" :title="teacherdialogtitle" @ok="closeModal2" :footer="null" :closable="false"
wrapClassName="doublepro" width="1300px" height="476px">
<div style="padding-bottom: 15px;">
<div style="cursor: pointer; margin-right: 32px;float: right; margin-top: -40px;" @click="cancelTeacherDialog">
<img style="width: 22px; height: 22px" src="../../assets/images/basicinfo/close22.png" />
<a-modal :visible="teacherdialog" @ok="closeModal2" :footer="null" :closable="false" wrapClassName="CreatePath"
>
<div class="out">
<div class="top">
<!-- <img class="topimg" src="../../assets/images/courseManage/add1.png" /> -->
<div class="topc">{{teacherdialogtitle }}</div>
<div @click="cancelTeacherDialog" style="margin-left: 850px; cursor: pointer">
<img
style="width: 20px; height: 20px"
src="../../assets/images/basicinfo/close.png"
/>
</div>
</div>
<div class="LecturerFeeStatistics">
<div class="filter">
@@ -111,11 +125,18 @@
</div>
</a-modal>
<!-- 三级页面弹窗组件 -->
<a-modal :visible="teacherdialoga" title="讲师费月度统计--明细" @ok="closeModal2" :footer="null" :closable="false"
wrapClassName="doublepro" width="1300px" height="476px">
<div style="padding-bottom: 15px;">
<div style="cursor: pointer; margin-right: 32px;float: right; margin-top: -40px;" @click="cancelTeacherDialoga">
<img style="width: 22px; height: 22px" src="../../assets/images/basicinfo/close22.png" />
<a-modal :visible="teacherdialoga" @ok="closeModal2" :footer="null" :closable="false" wrapClassName="CreatePath"
>
<div class="out">
<div class="top">
<!-- <img class="topimg" src="../../assets/images/courseManage/add1.png" /> -->
<div class="topc">讲师费月度统计--明细</div>
<div @click="cancelTeacherDialoga" style="margin-left: 850px; cursor: pointer">
<img
style="width: 20px; height: 20px"
src="../../assets/images/basicinfo/close.png"
/>
</div>
</div>
<div class="LecturerFeeStatistics">
<div class="filter">
@@ -159,7 +180,7 @@ import { message } from "ant-design-vue";
import dayjs from "dayjs";
import { getTeacherPayRollPriceList } from "../../api/Lecturer";
import { getOrganization } from "../../api/Teaching";
import { queryTeacherFeeTotalList, queryTeacherFeeMonthly, getTeacherFeeDetailListByTeacherNo, getTeacherFeeListByTeacherNo } from "../../api/lecturerFeeStatistics";
import { queryTeacherFeeTotalList, queryTeacherFeeMonthly, getTeacherFeeDetailListByTeacherNo, getTeacherFeeListByTeacherNo ,getPreviousTeacherfee} from "../../api/lecturerFeeStatistics";
export default {
name: "LecturerFeeStatistics",
components: {
@@ -176,6 +197,9 @@ export default {
teacherdialog: false,
teacherdialoga: false,
teacherdialogtitle: null,
searchdate: null, //选择时间
startTime: null, //开始时间
endTime: null, //结束时间
searchParam: {
pageNo: "1",
pageSize: "10",
@@ -254,17 +278,19 @@ export default {
const searchSubmit = () => {
getTableDate();
};
//日期格式转化
const handleDate = () => {
}
//重新汇总上月
const searchReset = () => {
state.searchParam = {
pageNo: '1',
pageSize: '10',
}
}
//修改时间
const searchTimeChange = (e, date) => {
let startTime = date[0] + " 00:00:00";
let endTime = date[1] + " 23:59:59";
state.startTime = new Date(startTime).getTime();
state.endTime = new Date(endTime).getTime() ;
// state.searchParam.startDate = new Date(startDate).getTime() ;
// state.searchParam.endDate = new Date(endDate).getTime() ;
state.searchParam.startDate = state.startTime? state.startTime:null,
state.searchParam.endDate = state.endTime? state.endTime:null,
console.log( state.searchParam.startDate ? '111' :'222')
console.log(date, state.searchParam.startDate, state.searchParam.endDate);
};
//二级页面搜索
const searchFeeMonthlya = () => {
TeacherSystem()
@@ -274,6 +300,7 @@ export default {
state.tableLoading = true
let objA = { ...state.searchParam };
// let objA = {"pageNo":"1","pageSize":"10","startDate":'2024-06-01',"endDate":'2024-06-30'};
objA.startDate= state.searchParam.startDate!==null? dayjs(new Date(state.searchParam.startDate).getTime()).format("YYYY-MM-DD"): "",
objA.endDate=state.searchParam.endDate!==null? dayjs(new Date(state.searchParam.endDate).getTime()).format("YYYY-MM-DD"): "",
queryTeacherFeeTotalList(objA)
@@ -281,10 +308,18 @@ export default {
tableData.value = res.data.data.records
state.tableDataTotal = Number(res.data.data.total);
state.tableLoading = false
console.log("获取讲师tableData", tableData);
})
};
getTableDate()
//重新汇总上月数据
const searchResetPrevious=()=>{
state.tableLoading = true
getPreviousTeacherfee().then((res)=>{
tableData.value = res.data.data
state.tableDataTotal = Number(res.data.data.total);
state.tableLoading = false
})
}
// // 翻页
const changePagination = (page, pageSize) => {
state.searchParam.pageNo = page;
@@ -699,7 +734,8 @@ export default {
}
return {
...toRefs(state),
...toRefs(state),
searchTimeChange,
handleFeeMonthly,
TeacherSystem,
handleLook,
@@ -726,12 +762,14 @@ export default {
tableFeeList,
teacherFeeList,
columnstableDetailList,
columnstableFeeList
columnstableFeeList,
searchResetPrevious,
}
},
};
</script>
<style lang="scss">
<style lang="scss" scoped>
//导出按钮icon
.daochu {
width: 16px;
@@ -1179,5 +1217,63 @@ export default {
}
}
}
.CreatePath {
.out {
z-index: 9999;
display: block;
position: absolute;
top: 90px;
width:1080px !important;
height: 525px;
overflow: auto;
background-color: #fff;
box-shadow: 0 0 10px rgba(118, 136, 166, 0.21);
left: 50%;
top:300px ;
transform: translate(-50%, -50%);
.top {
width: 100%;
height: 68px;
background: linear-gradient(
rgba(78, 166, 255, 0.2) 0%,
rgba(78, 166, 255, 0) 100%
);
display: flex;
align-items: center;
.topimg {
width: 18px;
height: 18px;
margin-left: 27px;
margin-top: -2px;
}
.topc {
color: #000000;
font-size: 16px;
margin-left: 8px;
}
}
.mid {
width: 100%;
height: 100%;
background-color: #fff;
display: flex;
flex-direction: column;
align-items: center;
.d {
// margin-top: 8px;
// color: #ff4e4e;
margin-left: -5px;
}
}
}
}
</style>