Kaynağa Gözat

feat: fix useTableCheck bug

chenhao 2 yıl önce
ebeveyn
işleme
c32aaf4d56

+ 2 - 1
src/hooks/useTableCheck.ts

@@ -20,7 +20,7 @@ type RowType<T extends TableDataType<InputDataType>> = ArrayData<UnwrapRef<T>> &
 }
 
 function isMultipleData(data: any): data is MultipleResultType {
-  return isDefine(data.value.result) && isDefine(data.value.totalCount)
+  return isDefine(data?.result) && isDefine(data?.totalCount)
 }
 
 const useTableCheck = <T extends TableDataType<InputDataType>>(data: T, auto = true) => {
@@ -34,6 +34,7 @@ const useTableCheck = <T extends TableDataType<InputDataType>>(data: T, auto = t
     const d = unref(data)
     let result: RowType<T>[] = []
     if (d) {
+      console.log(d)
       if (isMultipleData(d)) {
         result = d?.result?.map((d, index) => ({ ...d, index: d.index ?? index })) as RowType<T>[]
       } else {

+ 13 - 7
src/modules/quality/self-check/index.vue

@@ -23,7 +23,7 @@
 
 <script setup lang="ts" name="QualitySelfCheck">
 /** 自查一致性分析 */
-import { reactive, ref, computed } from 'vue'
+import { reactive, watch, computed } from 'vue'
 import { ElButton, ElCard } from 'element-plus'
 import { omit } from 'lodash-es'
 import BaseForm from '@/components/element/BaseForm.vue'
@@ -45,11 +45,17 @@ const model = reactive<FormModel & { time: string }>({
   markingGroupNumber: void 0,
 })
 
-const { subjectList, mainQuestionList, groupList, changeModelValue } = useOptions(
-  ['subject', 'question', 'group'],
-  void 0,
-  false
-)
+const { subjectList, mainQuestionList, groupList, dataModel, onOptionInit, changeModelValue } = useOptions([
+  'subject',
+  'question',
+  'group',
+])
+
+watch(dataModel, () => {
+  model.subjectCode = dataModel.subject || ''
+  model.questionMainNumber = dataModel.question
+  model.markingGroupNumber = dataModel.group
+})
 
 const { defineColumn, _ } = useForm()
 
@@ -104,7 +110,7 @@ function onSearch() {
   selfCheckAnalysis({ ...omit(model, 'time'), startTime: model.time[0], endTime: model.time[1] })
 }
 
-onSearch()
+onOptionInit(onSearch)
 </script>
 
 <style scoped lang="scss">