Przeglądaj źródła

feat(scene): update live casader

gemercheung 3 lat temu
rodzic
commit
5c2c191a25
3 zmienionych plików z 14548 dodań i 4 usunięć
  1. 1 1
      src/api/scene/live.ts
  2. 14514 0
      src/utils/cascaderData.ts
  3. 33 3
      src/views/scenes/liveDrawer.vue

+ 1 - 1
src/api/scene/live.ts

@@ -17,7 +17,7 @@ enum Api {
   bindUser = '/basic-api/brand/bindUser',
   brandUpdate = '/basic-api/brand/update',
   upload = '/basic-api/sys/oss/upload',
-  getAllScene = '/basic-api/scene/getAllScene',
+  getAllScene = '/zfb-api/zfb/scene/list',
 }
 export type SceneLiveItemResult = SceneLiveItem;
 /**

Plik diff jest za duży
+ 14514 - 0
src/utils/cascaderData.ts


+ 33 - 3
src/views/scenes/liveDrawer.vue

@@ -8,21 +8,28 @@
     @ok="handleSubmit"
   >
     <div class="entry-x">
-      <BasicForm @register="registerForm" />
+      <BasicForm @register="registerForm">
+        <!-- <template #location="{ field, model }">
+          <div>
+            <Card> </Card>
+          </div>
+        </template> -->
+      </BasicForm>
     </div>
   </BasicDrawer>
 </template>
 <script lang="ts">
   import { defineComponent, ref, computed, unref } from 'vue';
   import { BasicForm, useForm, FormSchema } from '/@/components/Form/index';
-
+  // import { Card } from 'ant-design-vue';
   import { BasicDrawer, useDrawerInner } from '/@/components/Drawer';
 
   // import { useMessage } from '/@/hooks/web/useMessage';
   import { useI18n } from '/@/hooks/web/useI18n';
 
   import { brandTypeListApi, uploadLiveApi, getAllSceneApi } from '/@/api/scene/live';
-
+  import { data as CascaderData } from '/@/utils/cascaderData';
+  // Card
   export default defineComponent({
     name: 'MenuDrawer',
     components: { BasicDrawer, BasicForm },
@@ -88,6 +95,29 @@
             api: getAllSceneApi,
           },
         },
+        // :fieldNames="{ label: 'name', value: 'code', children: 'children' }"
+        {
+          field: 'location',
+          label: '直播间位置',
+          component: 'ApiCascader',
+          labelWidth: 100,
+          componentProps: {
+            api: () => {
+              return CascaderData;
+            },
+            apiParamKey: 'children',
+            dataField: 'children',
+            labelField: 'name',
+            valueField: 'code',
+          },
+          isLeaf: (record) => {
+            return !(record.levelType < 3);
+          },
+          // slot: 'location',
+          colProps: {
+            span: 20,
+          },
+        },
       ];
       // updateSchema, validate
       const [registerForm, { resetFields, setFieldsValue }] = useForm({