Browse Source

no message

kllay 1 day ago
parent
commit
83f1d89533

+ 4 - 4
src/views/system/timetablemanage/AdditionDialog/index.vue

@@ -29,15 +29,15 @@
     </el-form-item>
 
 
-      <el-form-item label="学期" prop="semester">
+      <el-form-item  v-if="false" label="学期" prop="semester">
         <el-input-number v-model="form.semester" :min="1" />
       </el-form-item>
 
-      <el-form-item label="年级" prop="grade">
+      <el-form-item  v-if="false" label="年级" prop="grade">
         <el-input-number v-model="form.grade" :min="1" />
       </el-form-item>
 
-      <el-form-item label="班级编码" prop="class_number">
+      <el-form-item   v-if="false" label="班级编码" prop="class_number">
         <el-input-number v-model="form.class_number" :min="1" :max="10" />
       </el-form-item>
 
@@ -45,7 +45,7 @@
         <el-input v-model="form.classroom" />
       </el-form-item>
 
-      <el-form-item label="总课时" prop="total_lessons">
+      <el-form-item   v-if="false" label="总课时" prop="total_lessons">
         <el-input-number v-model="form.total_lessons" :min="1" />
       </el-form-item>
     </el-form>

+ 9 - 7
src/views/system/timetablemanage/api.ts

@@ -48,13 +48,15 @@ export function getTeacherList(){
     });
 }
 
-// export function DelObj(id: DelReq) {
-// 	return request({
-// 		url: apiPrefix + id + '/',
-// 		method: 'delete',
-// 		data: { id },
-// 	});
-// }
+export function DelObj(id: number) {
+	return request({
+		url: apiTimetable + id + '/',
+		method: 'delete',
+		data: { id },
+	});
+}
+
+
 export function GetPermission(week_offset:number) {
 
     return request({

+ 23 - 1
src/views/system/timetablemanage/index.vue

@@ -48,6 +48,13 @@
 					@click.stop="openDialogEdit(course)"
 					>
 						{{ course.classdetail }} 老师:({{ course.teacher_name }}) 教室:{{ course.classroom }}
+					<el-link
+						type="danger"
+						style="font-size: 12px;  top: 0; right: 0"
+						@click.stop="deleteCourse(course.id)"
+					>
+						删除
+					</el-link>
 					</div>
 				</div>
 			</template>
@@ -75,11 +82,13 @@ import isoWeek from 'dayjs/plugin/isoWeek';
 import isoWeeksInYear from 'dayjs/plugin/isoWeeksInYear';
 import weekOfYear from 'dayjs/plugin/weekOfYear';
 import { computed, onMounted, ref } from 'vue';
-import { GetPermission,getScheduleData } from './api';
+import { GetPermission,getScheduleData,DelObj } from './api';
 import { createCrudOptions } from './crud';
 import { handleColumnPermission } from '/@/utils/columnPermission';
 import AdditionDialog from './AdditionDialog/index.vue';
 import { inject } from 'vue';
+import { ElMessage } from 'element-plus';
+
 
 const isEmbedded = inject('isEmbedded', false);
 const onCourseSelected = inject('onCourseSelected', () => {});
@@ -141,6 +150,19 @@ function editCourse(course: any) {
 }
 
 
+
+async function deleteCourse(courseId: number) {
+  try {
+    await DelObj(courseId);
+    ElMessage.success('删除成功');
+    await loadData(); // 重新加载数据以刷新视图
+  } catch (error) {
+    ElMessage.error('删除失败,请稍后重试');
+    // console.error('删除课程失败:', error);
+  }
+}
+
+
 function getStartTime(time: number): string {
   const timeMap = {
     1: '09:00:00',