ME 2 hari lalu
induk
melakukan
d53ac74e9f
1 mengubah file dengan 19 tambahan dan 12 penghapusan
  1. 19 12
      src/views/emergency/schedule-add-or-update.vue

+ 19 - 12
src/views/emergency/schedule-add-or-update.vue

@@ -2,15 +2,15 @@
   <el-dialog v-model="visible" :title="!dataForm.id ? '新增' : '修改'" :close-on-click-modal="false" :close-on-press-escape="false">
     <el-form :model="dataForm" :rules="rules" ref="dataFormRef" @keyup.enter="dataFormSubmitHandle()" label-width="120px">
       <el-form-item label="员工姓名" prop="employeeIds">
-            <el-select v-model="dataForm.employeeIds" placeholder="员工姓名" multiple collapse-tags collapse-tags-tooltip clearable>
+            <el-select v-model="dataForm.employeeIds" placeholder="员工姓名" multiple  collapse-tags-tooltip clearable>
               <el-option v-for="item in employeeOptions" :key="item.id" :label="item.name" :value="item.id" ></el-option>
           </el-select>
       </el-form-item>
-          <el-form-item label="是否确认" prop="status">
+          <!-- <el-form-item label="是否确认" prop="status">
             <el-select v-model="dataForm.status" placeholder="是否确认">
               <el-option :label="item.dictLabel" :value="item.dictValue" v-for="item in state.getDictByKey('scheduleStatus')"></el-option>
           </el-select>
-      </el-form-item>
+      </el-form-item> -->
                   <el-form-item label="备注" prop="remark">
         <el-input v-model="dataForm.remark" placeholder="备注"></el-input>
       </el-form-item>
@@ -42,9 +42,9 @@ const rules = ref({
           employeeIds: [
     { required: true, type: 'array', min: 1, message: '请选择至少一名员工', trigger: 'change' }
   ],
-          status: [
-      { required: true, message: '必填项不能为空', trigger: 'blur' }
-    ]
+    //       status: [
+    //   { required: true, message: '必填项不能为空', trigger: 'blur' }
+    // ]
   });
 
 const props = defineProps<{ defaultDate?: string }>();
@@ -62,7 +62,7 @@ const init =async  (id?: number, date?: string, dates?: string[]) => {
   await fetchEmployeeOptions();
 
   if (id) {
-    getInfo(id);
+    getInfo(date);
   }
 };
 
@@ -74,11 +74,18 @@ const fetchEmployeeOptions = async () => {
   employeeOptions.value = res.data.list || [];
 };
 
-// 获取信息
-const getInfo = (id: number) => {
-  baseService.get("/emergency/schedule/" + id).then((res) => {
-    Object.assign(dataForm, res.data);
+const getInfo = ( date?: string) => {
+  baseService.get(`/emergency/schedule/date/${date}` ).then((res) => {
+    const first = res.data?.[0];
+    if (!first) {
+      console.warn('没有查到排班记录');
+      return;
+    }
+    Object.assign(dataForm, first);
+    dataForm.id = first.id || '';
+
     dataForm.status = dataForm.status + '';
+    dataForm.employeeIds = dataForm.employeeIds || [];
   });
 };
 
@@ -108,7 +115,7 @@ const dataFormSubmitHandle = () => {
       scheduleDTOs,
       remark: dataForm.remark
     };
-    dataForm.status = dataForm.status ? Number(dataForm.status) : null;
+    // dataForm.status = dataForm.status ? Number(dataForm.status) : null;
     baseService.post("/emergency/schedule/batch", payload).then((res) => {
       ElMessage.success({
         message: '成功',