刘洋 8 months ago
parent
commit
dbd11e4b26

+ 10 - 0
src/render/ap/baseDataConfig.ts

@@ -156,3 +156,13 @@ export const exportStu = (params: { examId: any }) => {
     download: true,
     download: true,
   });
   });
 };
 };
+export const editSubjectName = (params: {
+  examId: any;
+  subjectCode: string;
+  subjectName: string;
+}) =>
+  request({
+    url: "/api/admin/subject/edit",
+    params,
+    loading: true,
+  });

+ 71 - 0
src/render/views/BaseDataConfig/EditSubjectDialog.vue

@@ -0,0 +1,71 @@
+<template>
+  <my-modal
+    v-model:open="visible"
+    title="编辑科目名称"
+    :width="400"
+    @ok="submitHandle"
+  >
+    <qm-low-form
+      :params="params"
+      :fields="fields"
+      :label-width="110"
+      :rules="rules"
+      ref="form"
+    >
+      <template #subjectCode>
+        {{ params.subjectCode }}
+      </template>
+    </qm-low-form>
+  </my-modal>
+</template>
+<script name="EditSubjectDialog" lang="ts" setup>
+import { ref, reactive, computed, onMounted } from "vue";
+import { editSubjectName } from "@/ap/baseDataConfig";
+import { useUserStore } from "@/store";
+
+const props = defineProps<{ curRow: any }>();
+
+const userStore = useUserStore();
+const form = ref();
+const visible = defineModel();
+const emit = defineEmits(["success"]);
+
+const params = reactive({
+  subjectCode: "",
+  subjectName: "",
+});
+onMounted(() => {
+  params.subjectCode = props.curRow?.subjectCode || "";
+  params.subjectName = props.curRow?.subjectName || "";
+});
+const fields = computed(() => {
+  return [
+    {
+      prop: "subjectCode",
+      cell: "subjectCode",
+      label: "科目代码",
+      colSpan: 24,
+    },
+    {
+      prop: "subjectName",
+      label: "科目名称",
+      colSpan: 24,
+    },
+  ];
+});
+
+const rules = {
+  subjectName: [{ required: true, message: "请输入科目名称" }],
+};
+
+const submitHandle = () => {
+  form.value.formRef.validate().then(() => {
+    editSubjectName({ examId: userStore.curExam?.id, ...params }).then(() => {
+      emit("success");
+      window.$message.success("修改成功");
+      visible.value = false;
+    });
+  });
+};
+</script>
+<style lang="less" scoped></style>

+ 14 - 0
src/render/views/BaseDataConfig/StuImport.vue

@@ -20,6 +20,7 @@
             >导入</qm-button
             >导入</qm-button
           >
           >
           <qm-button type="link" @click="clear(record)">清空</qm-button>
           <qm-button type="link" @click="clear(record)">清空</qm-button>
+          <qm-button type="link" @click="toEdit(record)">编辑</qm-button>
         </template>
         </template>
       </template>
       </template>
     </a-table>
     </a-table>
@@ -36,6 +37,13 @@
       @success="search"
       @success="search"
     >
     >
     </StuImportFileDialog>
     </StuImportFileDialog>
+
+    <EditSubjectDialog
+      v-model="showEditDialog"
+      v-if="showEditDialog"
+      :curRow="curRow"
+      @success="search"
+    ></EditSubjectDialog>
   </div>
   </div>
 </template>
 </template>
 <script name="StuImport" lang="ts" setup>
 <script name="StuImport" lang="ts" setup>
@@ -45,6 +53,7 @@ import { getStuList } from "@/ap/baseDataConfig";
 import { useUserStore } from "@/store";
 import { useUserStore } from "@/store";
 import { getStuImportSet, clearStuData } from "@/ap/baseDataConfig";
 import { getStuImportSet, clearStuData } from "@/ap/baseDataConfig";
 import StuImportFileDialog from "./StuImportFileDialog.vue";
 import StuImportFileDialog from "./StuImportFileDialog.vue";
+import EditSubjectDialog from "./EditSubjectDialog.vue";
 import type { TableColumnsType } from "@qmth/ui";
 import type { TableColumnsType } from "@qmth/ui";
 
 
 const userStore = useUserStore();
 const userStore = useUserStore();
@@ -54,6 +63,11 @@ const year = ref();
 const yearHalf = ref();
 const yearHalf = ref();
 const loading = ref(false);
 const loading = ref(false);
 
 
+const showEditDialog = ref(false);
+const toEdit = (record: any) => {
+  curRow.value = record;
+  showEditDialog.value = true;
+};
 const curParams = computed(() => {
 const curParams = computed(() => {
   return {
   return {
     year: `${year.value}`,
     year: `${year.value}`,