From fabce0717bc2a0e6b19d3ce5441dc528c7a3cdc9 Mon Sep 17 00:00:00 2001
From: wangxuemei <283912718@qq.com>
Date: Thu, 14 Nov 2024 14:06:53 +0800
Subject: [PATCH 1/2] =?UTF-8?q?=E5=A4=96=E9=83=A8=E6=8E=88=E8=AF=BE?=
=?UTF-8?q?=E5=BD=95=E5=85=A5=E6=96=B9=E5=BC=8F=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/views/lecturer/ExternalTeaching.vue | 22 +++++++++++-----------
src/views/lecturer/InsideTeaching.vue | 2 +-
2 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/src/views/lecturer/ExternalTeaching.vue b/src/views/lecturer/ExternalTeaching.vue
index ff220a25..412be484 100644
--- a/src/views/lecturer/ExternalTeaching.vue
+++ b/src/views/lecturer/ExternalTeaching.vue
@@ -48,7 +48,7 @@
-
@@ -351,7 +351,7 @@ export default {
tableDataTotal: -1,//table列表总条数
formParam: {
courseStatus: 1,
- entryType: 1,
+ createFrom: 1,
teaching: null,
teachingDate: null,
},
@@ -367,7 +367,7 @@ export default {
courseStatus: null,
beginTime: null,
endTime: null,
- entryType: null,
+ createFrom: null,
},
})
// function searchTimeChange(time, timeStr) {
@@ -464,18 +464,18 @@ export default {
},
{
title: '录入类型',
- dataIndex: 'entryType',
- key: 'entryType',
+ dataIndex: 'createFrom',
+ key: 'createFrom',
elipsis: true, align: "center",
width: 120,
customRender: (value) => {
return (
- {value.record.entryType == "1" || value.record.entryType == "2"
+ {value.record.createFrom == "0" || value.record.createFrom == "1"
? {
"0": "系统生成",
"1": "手动录入",
- }[value.record.entryType + ""] || ""
+ }[value.record.createFrom + ""] || ""
: "-"}
)
@@ -604,7 +604,7 @@ export default {
name: null,
manager: null,
courseStatus: null,
- entryType: null,
+ createFrom: null,
systemId: null,
endTime: null,
beginTime: null,
@@ -639,7 +639,7 @@ export default {
cancel()
state.teacherdialog = true;
state.teacherdialogtitle = '添加授课记录'
- state.formParam.entryType='1'
+ state.formParam.createFrom='1'
state.vf = true
}
@@ -757,7 +757,7 @@ export default {
state.searchParam.type = null
state.searchParam.courseStatus = null
state.searchParam.id = null
- state.searchParam.entryType = null
+ state.searchParam.createFrom = null
}
}
//表格内查看数据操作
@@ -801,7 +801,7 @@ export default {
//导出功能
const handleExport = () => {
window.open(
- `${process.env.VUE_APP_BASE_API}/admin/export/exportOutTeacherRecord?pageNo=${state.searchParam.pageNo}&pageSize=${state.searchParam.pageSize}&recordType=2&name=${state.searchParam.name ? state.searchParam.name : ""}&courseName=${state.searchParam.courseName ? state.searchParam.courseName : ""}&entryType=${state.searchParam.entryType ? state.searchParam.entryType : ""}&beginTime=${state.searchParam.beginTime ? state.searchParam.beginTime : ""}&endTime=${state.searchParam.endTime ? state.searchParam.endTime : ""}&courseTypeId=${state.searchParam.courseTypeId ? state.searchParam.courseTypeId : ""}&courseStatus=${state.searchParam.courseStatus ? state.searchParam.courseStatus : ""}`
+ `${process.env.VUE_APP_BASE_API}/admin/export/exportOutTeacherRecord?pageNo=${state.searchParam.pageNo}&pageSize=${state.searchParam.pageSize}&recordType=2&name=${state.searchParam.name ? state.searchParam.name : ""}&courseName=${state.searchParam.courseName ? state.searchParam.courseName : ""}&createFrom=${state.searchParam.createFrom ? state.searchParam.createFrom : ""}&beginTime=${state.searchParam.beginTime ? state.searchParam.beginTime : ""}&endTime=${state.searchParam.endTime ? state.searchParam.endTime : ""}&courseTypeId=${state.searchParam.courseTypeId ? state.searchParam.courseTypeId : ""}&courseStatus=${state.searchParam.courseStatus ? state.searchParam.courseStatus : ""}`
);
}
const clearstudysNumber = () => {
diff --git a/src/views/lecturer/InsideTeaching.vue b/src/views/lecturer/InsideTeaching.vue
index 87b81ff0..2f74c373 100644
--- a/src/views/lecturer/InsideTeaching.vue
+++ b/src/views/lecturer/InsideTeaching.vue
@@ -314,7 +314,7 @@
{{ formParam.userNo }}
{{ formParam.orgName }}
{{ formParam.tsystemName }}
- {{ formParam.levelName
+ {{ formParam.tlevelName
}}
{{ formParam.createFrom == 0 ? '系统生成' : formParam.createFrom == 1 ? '手动录入' : '' }}
From 1b2cbe8d7a88a39b15b332677e43e8818dd10df9 Mon Sep 17 00:00:00 2001
From: wangxuemei <283912718@qq.com>
Date: Thu, 14 Nov 2024 18:13:05 +0800
Subject: [PATCH 2/2] =?UTF-8?q?=E6=8E=88=E8=AF=BE=E8=AE=B0=E5=BD=95?=
=?UTF-8?q?=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/components/lecturer/ImportWork.vue | 2 +-
src/views/lecturer/ExternalLecturer.vue | 99 +++++++++++++++------
src/views/lecturer/ExternalTeaching.vue | 17 +++-
src/views/lecturer/InsideTeaching.vue | 65 ++++++++------
src/views/lecturer/LookExternalLecturer.vue | 30 ++++---
src/views/lecturer/LookInsideLecturer.vue | 5 +-
src/views/lecturer/TeachingRecord.vue | 4 +-
7 files changed, 149 insertions(+), 73 deletions(-)
diff --git a/src/components/lecturer/ImportWork.vue b/src/components/lecturer/ImportWork.vue
index 017c2916..067a922a 100644
--- a/src/components/lecturer/ImportWork.vue
+++ b/src/components/lecturer/ImportWork.vue
@@ -202,7 +202,7 @@ import {getCookieForName} from "@/api/method";
state.fileList = [];
state.uploadpercent = -1;
message.destroy();
- message.error("图片不能超过500KB! 请重新上传");
+ message.error("文件大小超出500M,请重新上传");
return;
}
diff --git a/src/views/lecturer/ExternalLecturer.vue b/src/views/lecturer/ExternalLecturer.vue
index 3dffa6e1..bc210576 100644
--- a/src/views/lecturer/ExternalLecturer.vue
+++ b/src/views/lecturer/ExternalLecturer.vue
@@ -38,6 +38,14 @@
+
+
+
+ {{ record.teaching }} 分钟
+
+
handleLook(record, String(record.courseform))">查看
@@ -100,7 +108,8 @@
-
@@ -117,7 +126,7 @@
-
@@ -130,13 +139,13 @@
-
-
+
- {{ (formParam.defaultTeachingTime / 60
+ {{ (formParam.teaching / 60
).toFixed(2) }}小时
- 0.00小时
+ 0.00小时
@@ -159,11 +168,12 @@
-
+
@@ -263,7 +273,7 @@ import { getTeacherList, getTeacherById, deleteInTeacher, updateTeacherState, i
import { fileUp } from "../../api/indexEval";
import {getCookieForName} from "@/api/method"
import SearchTeacher from "@/components/project/SearchTeacher";
-import boe from '@/assets/boe.jpg'
+import avatar from '@/assets/avatar.png'
export default {
name: "ExternalLecturer",
components: {
@@ -315,9 +325,9 @@ export default {
formParam: {
description:"",
teacherType:'2',
- photo:'',
+ photo:avatar,
status:1,
- defaultTeachingTime:'',
+ teaching:'',
},
vf:true,
searchParam: {
@@ -399,11 +409,19 @@ export default {
width: 200,
},
{
- title: '授课时长 ',
- dataIndex: 'defaultTeachingTime',
- key: 'defaultTeachingTime',
- elipsis: true, align: "center",
- width: 200,
+ title: '初始授课时长 ',
+ dataIndex: 'teaching',
+ key: 'teaching',
+ elipsis: true, align: "center",
+ scopedSlots: { customRender: "teaching" },
+ width: 400,
+ // customRender: (value, record) => {
+ // return (
+ //
+ // {value.record.orgName}
+ //
+ // )
+ // }
},
{
title: '账号状态 ',
@@ -483,10 +501,11 @@ export default {
cancel()
state.teacherdialog = true;
state.teacherdialogtitle = '新增讲师'
- state.formParam.photo =userInfo.value?.avatar
+ // state.formParam.photo =userInfo.value?.avatar
+ state.formParam.photo = avatar
state.vf = true
state.formParam.status = '1'
- state.formParam.photo = state.formParam.photo === null ?boe : state.formParam.photo
+ // state.formParam.photo = state.formParam.photo === null ?boe : state.formParam.photo
}
//修改讲师信息弹窗
@@ -517,6 +536,7 @@ export default {
return message.error(rules[formItemNames[i]][0].log)
}
}
+ state.formParam.description = repl(state.formParam.description)
state.formParam = {...state.formParam}
if (state.vf == false) {
updateInTeacher(state.formParam).then(response => {
@@ -613,7 +633,7 @@ export default {
status:1,
teacherType:2,
photo:null,
- defaultTeachingTime:null,
+ teaching:null,
name: null,
mobile: null,
email: null,
@@ -675,24 +695,48 @@ export default {
console.log("外部讲师详情", err);
});
}
+ const sendName=()=>{
+ // const reg = /\s/g;
+ // if (!state.formParam.name) {
+ // } else if (!reg.test(state.formParam.name)) {
+ // state.formParam.mobile='2'
+ // // state.formParam.mobile = state.formParam.mobile.replace(/\D/g, '');
+ // }
+ state.formParam.name = state.formParam.name.replace(/\s/g, '');
+ }
const sendPhone=()=>{
console.log(state.formParam.mobile)
const reg = /^1[3|4|5|6|7|8|9][0-9]\d{8}$/;
- // if (!state.formParam.mobile) {
- // } else if (!reg.test(state.formParam.mobile)) {
- // message.warning( '手机号格式不正确')
- // }
+ if (!state.formParam.mobile) {
+ } else if (!reg.test(state.formParam.mobile)) {
+ message.warning( '手机号格式不正确')
+ state.formParam.mobile=''
+ // state.formParam.mobile = state.formParam.mobile.replace(/\D/g, '');
+ }
+
}
const sendEmail=()=>{
const reg = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.\w{2,}$/;
- // if (!reg.test(state.formParam.email)) {
- // message.warning( '邮箱格式不正确')
- // }
+ if (!reg.test(state.formParam.email)) {
+ message.warning( '邮箱格式不正确')
+ state.formParam.email=''
+ // state.formParam.email = state.formParam.email.replace( /[\u4e00-\u9fa5]/g, '');
+ }
}
const clearNonNumber = () => {
- state.formParam.defaultTeachingTime = state.formParam.defaultTeachingTime.replace(/\D/g, '');
+ state.formParam.teaching = state.formParam.teaching.replace(/\D/g, '');
// state.formParam.teaching
}
+ const sendRemark=()=>{
+ state.formParam.remark = state.formParam.remark.replace(/\s/g, '');
+ }
+ const repl = (val) => {
+ if(val){
+ val = val?.replace(/\s* \s*/g, '')
+ val = val?.replace(/\s+/g, '')
+ return val
+ }
+ }
// getpromotionrecordstableData()
//导出功能
const handleExport = () => {
@@ -727,8 +771,11 @@ export default {
rules,
rule,
formRef,
+ repl,
+ sendName,
sendPhone,
sendEmail,
+ sendRemark,
// managerChange,
headers,
beforeUpload,
diff --git a/src/views/lecturer/ExternalTeaching.vue b/src/views/lecturer/ExternalTeaching.vue
index 412be484..ff884f2d 100644
--- a/src/views/lecturer/ExternalTeaching.vue
+++ b/src/views/lecturer/ExternalTeaching.vue
@@ -21,7 +21,7 @@
-
课程日期:
+
授课日期:
-
+
@@ -164,7 +164,7 @@
-
+
@@ -207,6 +207,7 @@
@@ -386,7 +387,7 @@ export default {
teacherName: [{ required: true, message: '', log: '讲师不能为空' }],
courseTypeId: [{ required: true, message: '', log: '内容分类不能为空' }],
courseName: [{ required: true, message: '', log: '课程名称不能为空' }],
- courseStatus: [{ required: true, message: '', log: '讲开课状态不能为空' }],
+ courseStatus: [{ required: true, message: '', log: '课程状态不能为空' }],
teaching: [{ required: true, message: '', log: '授课时长不能为空' }],
teachingDate: [{ required: true, message: '', log: '授课日期不能为空' }],
@@ -818,9 +819,17 @@ const enterPressHadlerSearch = e => {
}
};
+const sendName=()=>{
+ state.formParam.courseName = state.formParam.courseName.replace(/\s/g, '');
+ }
+ const sendRemark=()=>{
+ state.formParam.remark = state.formParam.remark.replace(/\s/g, '');
+ }
return {
...toRefs(state),
rules,
+ sendName,
+ sendRemark,
enterPressHadlerSearch,
treetype,
clearscoreNumber,
diff --git a/src/views/lecturer/InsideTeaching.vue b/src/views/lecturer/InsideTeaching.vue
index 2f74c373..5b180d86 100644
--- a/src/views/lecturer/InsideTeaching.vue
+++ b/src/views/lecturer/InsideTeaching.vue
@@ -20,7 +20,7 @@
-->
-
创建时间:
+
授课日期
-
-
@@ -167,11 +167,11 @@
-
+
-
@@ -220,7 +220,8 @@
-
+
@@ -232,8 +233,6 @@
-
-
@@ -283,6 +282,7 @@
@@ -455,7 +455,7 @@ export default {
pageSize: 10,
tableDataTotal: -1,//table列表总条数
searchdate: undefined, //选择时间
- teachingDate: null, //选择时间
+ teachingDate: undefined, //选择时间
beginTime: null, //开始时间
endTime: null, //结束时间
tSystemNames:{
@@ -472,7 +472,7 @@ export default {
},
startTime:null,
searchParam:
- { "recordType": 1, "pageNo": 1, "pageSize": 10, "managerId": null, "name": null, "createFrom": null, "courseStatus": null, "orgId": null, "tSystemId": null, "endTime": null, "beginTime":null, "studysranges": [], "score": null }
+ { "recordType": 1, "pageNo": 1, "pageSize": 10, "managerId": null, "name": null, "createFrom": null, "courseStatus": null, "orgId": null, "tSystemId": null, "endTime": null, "beginTime":null, "studys": [], "score": null }
})
// watch(()=>state.formParam.name,(val)=>{
// state.formParam.teacherName = val?.split('/')[1]
@@ -773,6 +773,17 @@ export default {
const tableData = ref([
])
+ const rules = {
+ // name: [{ required: true, message:'',log: '讲师不能为空' }],
+ // orgName: [{ required: true, message: '',log:'讲师组织不能为空' }],
+ // tlevelName: [{ required: true, message: '',log:'讲师级别不能为空' }],
+ // tsystemName: [{ required: true, message: '',log:'讲师体系不能为空' }],
+ courseTypeId: [{ required: true, message: '',log:'内容分类不能为空' }],
+ courseName: [{ required: true, message: '',log:'课程名称不能为空' }],
+ teachingDate: [{ required: true, message: '', log: '授课日期不能为空' }],
+ teaching: [{ required: true, message:'',log: '授课时长不能为空' }],
+ courseStatus: [{ required: true, message: '',log:'开课状态不能为空' }],
+ }
//展开切换
const handlemoreid = () => {
if (state.moreid == 1) {
@@ -785,8 +796,8 @@ export default {
state.searchParam.orgId = null
state.searchParam.tSystemId = null
state.searchParam.id = null
- state.searchParam.scoreranges = []
- state.searchParam.studysranges = []
+ state.searchParam.score = []
+ state.searchParam.studys = []
}
}
// 搜索
@@ -826,8 +837,8 @@ export default {
tSystemId: null,
endTime: null,
beginTime: null,
- studysranges: [],
- score: null,
+ studys: [],
+ score: undefined,
status:null,
};
getTableDate();
@@ -900,13 +911,14 @@ export default {
state.formParam.orgName = reversedParts.join('/');
}
})
+
//保存
const createTeacherDialog = async () => {
+ state.formParam.teachingDate = state.teachingDate ? dayjs(state.teachingDate).format("YYYY-MM-DD HH:mm").toString() : ""
state.formParam.teacherName = state.formParam.name?.split('/')[0]
state.formParam.userNo =state.formParam.name?.split('/')[1]
state.formParam.tsystemName = state.tSystemNames.systemName
state.formParam.tsystemId = state.tSystemNames?.systemId
- state.formParam.teachingDate=state.teachingDate ? dayjs(state.teachingDate).format("YYYY-MM-DD HH:mm").toString() : " "
const formItemNames = Object.keys(rules);
for(let i=0;i {
window.open(
- `${process.env.VUE_APP_BASE_API}/admin/export/exportInTeacherRecord?pageNo=${state.searchParam.pageNo}&pageSize=${state.searchParam.pageSize}&recordType=1&name=${state.searchParam.name ? state.searchParam.name :''}&courseName=${state.searchParam.courseName ? state.searchParam.courseName :''}&createFrom=${state.searchParam.createFrom ? state.searchParam.createFrom : ''}&courseStatus=${state.searchParam.courseStatus ? state.searchParam.courseStatus :''}&tSystemId=${state.searchParam.tSystemId ? state.searchParam.tSystemId : ''}&beginTime=${state.searchParam.beginTime ? state.searchParam.beginTime : ''}&endTime=${state.searchParam.endTime ? state.searchParam.endTime : ''}&orgId=${state.searchParam.orgId ? state.searchParam.orgId :''}&courseTypeId=${state.searchParam.courseTypeId ? state.searchParam.courseTypeId : ''}&scoreranges=${state.searchParam.scoreranges ? state.searchParam.scoreranges : ''}&studysranges=${state.searchParam.studysranges ? state.searchParam.studysranges : ' '}
+ `${process.env.VUE_APP_BASE_API}/admin/export/exportInTeacherRecord?pageNo=${state.searchParam.pageNo}&pageSize=${state.searchParam.pageSize}&recordType=1&name=${state.searchParam.name ? state.searchParam.name :''}&courseName=${state.searchParam.courseName ? state.searchParam.courseName :''}&createFrom=${state.searchParam.createFrom ? state.searchParam.createFrom : ''}&courseStatus=${state.searchParam.courseStatus ? state.searchParam.courseStatus :''}&tSystemId=${state.searchParam.tSystemId ? state.searchParam.tSystemId : ''}&beginTime=${state.searchParam.beginTime ? state.searchParam.beginTime : ''}&endTime=${state.searchParam.endTime ? state.searchParam.endTime : ''}&orgId=${state.searchParam.orgId ? state.searchParam.orgId :''}&courseTypeId=${state.searchParam.courseTypeId ? state.searchParam.courseTypeId : ''}&score=${state.searchParam.score ? state.searchParam.score : ''}&studys=${state.searchParam.studys ? state.searchParam.studys : ' '}
`)
console.log(state.searchParam.name,state.searchParam,'参数')
}
@@ -1227,8 +1228,16 @@ const enterPressHadlerSearch = e => {
}
};
+const sendName=()=>{
+ state.formParam.courseName = state.formParam.courseName.replace(/\s/g, '');
+ }
+ const sendRemark=()=>{
+ state.formParam.remark = state.formParam.remark.replace(/\s/g, '');
+ }
return {
...toRefs(state),
+ sendName,
+ sendRemark,
sysTypeOptions,
enterPressHadlerSearch,
treetype,
diff --git a/src/views/lecturer/LookExternalLecturer.vue b/src/views/lecturer/LookExternalLecturer.vue
index 945983c3..38b474bf 100644
--- a/src/views/lecturer/LookExternalLecturer.vue
+++ b/src/views/lecturer/LookExternalLecturer.vue
@@ -26,9 +26,10 @@ ExternalLecturer
{{formParam.name}}
{{formParam.mobile}}
{{formParam.email}}
- {{formParam.defaultteachingtime}}
- ({{
- (formParam.defaultteachingtime / 60).toFixed(2) }}小时)
+ {{formParam.teaching}}
+ 分钟
+ ({{
+ (formParam.teaching / 60).toFixed(2) }}小时)
@@ -37,15 +38,15 @@ ExternalLecturer
-
-
- --
+
+ -
- --
+ -
+
- {{formParam.remark===null?'':formParam.remark}}
+ {{formParam.remark ===null?'':formParam.remark}}
@@ -97,7 +98,8 @@ import { useRouter,useRoute } from "vue-router";
import { reactive, toRefs, ref } from "vue"
import {getTeacherById} from "../../api/Lecturer";
import { getNewInTeacherCourseList } from "../../api/Teaching";
-import boe from '@/assets/boe.jpg'
+// import boe from '@/assets/boe.jpg'
+import avatar from '@/assets/avatar.png'
export default{
name :"LookExternalLecturer",
components:{
@@ -133,7 +135,7 @@ export default{
getTeacherById({id:state.id}).then((res) => {
console.log("内部讲师详情", res.data);
state.formParam = res.data.data
- state.formParam.photo = state.formParam.photo ===null ?boe : state.formParam.photo
+ state.formParam.photo = state.formParam.photo ===null ?avatar : state.formParam.photo
getteacherrecordstableData()
})
.catch((err) => {
@@ -279,9 +281,17 @@ export default{
state.teacherrecords.pageNo = page;
getteacherrecordstableData();
};
+ const resp = (val) => {
+ if(val){
+ const reg = /<[^<>]+>/g;
+ const value = val.replace(reg, "");
+ return value
+ }
+ }
return{
...toRefs(state),
router,
+ resp,
TeacherSystem,
handleBack,
rowCenter:{"text-align":"center"},
diff --git a/src/views/lecturer/LookInsideLecturer.vue b/src/views/lecturer/LookInsideLecturer.vue
index b32b7112..335695a0 100644
--- a/src/views/lecturer/LookInsideLecturer.vue
+++ b/src/views/lecturer/LookInsideLecturer.vue
@@ -140,7 +140,8 @@ import { reactive, toRefs, ref, computed } from "vue"
import { useStore } from "vuex";
import {getTeacherById ,getTeacherLogList} from "../../api/Lecturer";
import { getNewInTeacherCourseList } from "../../api/Teaching";
-import boe from '@/assets/boe.jpg'
+// import boe from '@/assets/boe.jpg'
+import avatar from '@/assets/avatar.png'
export default{
name :"LookInsideLecturer",
components:{
@@ -177,7 +178,7 @@ export default{
let objA= res.data.data
console.log(objA ,'11111111111')
state.formParam = objA
- state.formParam.photo = state.formParam.photo ===null ?boe : state.formParam.photo
+ state.formParam.photo = state.formParam.photo ===null ?avatar : state.formParam.photo
state.teacherrepromo.userId=res.data.data.id
console.log(state.teacherrepromo.id);
getteacherrecordstableData()
diff --git a/src/views/lecturer/TeachingRecord.vue b/src/views/lecturer/TeachingRecord.vue
index ee6fe934..45e927a2 100644
--- a/src/views/lecturer/TeachingRecord.vue
+++ b/src/views/lecturer/TeachingRecord.vue
@@ -3,10 +3,10 @@