sujunling 2 سال پیش
والد
کامیت
d9e51e13d5

+ 8 - 2
src/api/dataAdmin/assembly.ts

@@ -21,12 +21,18 @@ const interfaceType = { apiUrl2: true };
 /**
  * @description:获取组件资源列表
  */
-export function list() {
+export function list(text) {
     const formData = new FormData();
+    var str = '';
+    if (text) {
+        str = `{ 'type': 'SR', 'servicetype': 'WidgetService',text:'${text}' }`
+    } else {
+        str = `{ 'type': 'SR', 'servicetype': 'WidgetService'}`
+    }
     formData.append("interfaceName", "antu.space.provider.sservicebase.ServiceBaseMetaDataViewProvider");
     formData.append("methodName", "getResourceList");
     formData.append("args[]", session.getItem('tokenV2'));
-    formData.append("args[]", "{ 'type': 'SR', 'servicetype': 'WidgetService' }");
+    formData.append("args[]", str);
     return new Promise<void>((resolve, reject) => {
         defHttp.post({ url: Api.CallProvider, params: formData, ...interfaceType })
             .then((r) => {

+ 12 - 6
src/views/assembly/index.vue

@@ -6,7 +6,7 @@
       </div>
       <div class="ztree-container">
         <p v-for="(i, k, index) in assemblyType" :key="index" @click="scrollToSection(k, index)"
-          :class="[`${action == index ? 'action' : ''}`]">{{ k }}({{i && i.length}})</p>
+          :class="[`${action == index ? 'action' : ''}`]">{{ k }}({{ i && i.length }})</p>
       </div>
     </div>
     <div class="datacenter-right">
@@ -32,6 +32,7 @@ export default defineComponent({
     var menu = ref({});
     var assemblylist = ref([]);
     const action = ref(0)
+    const actionName = ref('');
     var assemblyType = ref({
       // '地图基础功能': [],
       // '底图和模型加载': [],
@@ -47,7 +48,11 @@ export default defineComponent({
       '三维可视化效果工具': [],
     })
     onMounted(() => {
-      list().then(res => {
+      getDataList('');
+    })
+
+    function getDataList(key) {
+      list(key).then(res => {
         if (res && res.length) {
           var list = [];
           res.map(i => {
@@ -62,15 +67,16 @@ export default defineComponent({
           eventBus.emit('assemblylist', assemblyType.value)
         }
       })
-    })
+    }
 
     function scrollToSection(id, index) {
-      action.value = index;
-      var dom = document.getElementById(id);
-      if (dom) dom.scrollIntoView({ behavior: 'smooth' });
+      actionName.value = actionName.value == id ? '' : id;
+      action.value = action.value == index ? -1 : index;
+      eventBus.emit('actionName', actionName.value)
     }
 
     return {
+      getDataList,
       assemblyType,
       action,
       scrollToSection,

+ 17 - 4
src/views/assembly/item/AssemblyData.vue

@@ -16,7 +16,8 @@
         </div> -->
 
 
-        <div v-for="(j, key, index) in list" :key="index" style="clear: both;">
+        <div v-for="(j, key, index) in list" :sjl="key" v-show="(actionName == key || !actionName)" :key="index"
+          style="clear: both;">
           <p class="itemName" :id="key">{{ key }}</p>
           <div v-for="(i, n) in j" :key="n" class="item">
             <div><img :src="i.url" srcset=""></div>
@@ -24,9 +25,9 @@
             <p class="bottomBut">
               <span><a :href="[`./mapview.html?onlineIde_${i.servicealiasname}`]" target="_blank"
                   rel="noopener noreferrer">浏览</a></span>
-              <span @click="showDrawer(i)">详</span>
-              <span v-if="i.consumetype == 0">加入库</span>
-              <span v-if="i.consumetype == 1">已入库</span>
+              <span @click="showDrawer(i)">详</span>
+              <span v-if="i.consumetype == 0">加入申请库</span>
+              <span v-if="i.consumetype == 1">已申请库</span>
             </p>
           </div>
         </div>
@@ -72,12 +73,15 @@ export default defineComponent({
   },
   setup(props, { emit }) {
     const [registerModal, { openDrawer }] = useDrawer(); //使用右侧弹出框
+    const currentInstance = getCurrentInstance();
+    const parentSetup = currentInstance.parent.setupState;
     // const list = reactive(props.list);
     // watch(() => props.list, (obj) => {
     //   list.values = obj;
     //   console.log(list.values);
     // });
     const list = ref([]);
+    const actionName = ref('');
     console.log("list", list);
     eventBus.on('assemblylist', (i) => {
       console.log("i:", i);
@@ -91,6 +95,9 @@ export default defineComponent({
       setTimeout(() => list.value = i, 5000)
     })
 
+    eventBus.on('actionName', (i) => actionName.value = i);
+
+
     function handleQuery(record: Recordable) {
       console.log("11111:", record)
       openDrawer(true, {
@@ -124,7 +131,13 @@ export default defineComponent({
       visible.value = false;
     };
 
+    function getDataList(key) {
+      parentSetup.getDataList(key)
+    }
+
     return {
+      getDataList,
+      actionName,
       onClose,
       action,
       visible,

+ 6 - 2
src/views/assembly/item/child/Search.vue

@@ -10,7 +10,7 @@
             <a-input-search v-model:value="key" placeholder="请输入搜索内容" style="width: 200px" @search="onSearch" />
         </span>
         <div>
-            <a-checkbox v-model:checked="checked1">全部</a-checkbox>
+            <!-- <a-checkbox v-model:checked="checked1">全部</a-checkbox> -->
             <!-- <a-checkbox v-model:checked="checked2">测试数据1</a-checkbox>
             <a-checkbox v-model:checked="checked3">测试数据2</a-checkbox>
             <a-checkbox v-model:checked="checked4">测试数据3</a-checkbox> -->
@@ -30,7 +30,7 @@ export default defineComponent({
     name: 'Search',
     components: { library },
     setup() {
-        const value = ref<string>('1');
+        const value = ref<string>('0');
         const key = ref<string>('');
         const checked1 = ref<boolean>(false);
         const checked2 = ref<boolean>(false);
@@ -40,6 +40,10 @@ export default defineComponent({
         const parentSetup = currentInstance.parent.setupState;
 
         const options = ref<SelectTypes['options']>([
+            {
+                value: '0',
+                label: '全部',
+            },
             {
                 value: '1',
                 label: '已审核',