Selaa lähdekoodia

取消自动获取修改

duy 1 kuukausi sitten
vanhempi
commit
20bf02408f

+ 8 - 1
src/api/modules/data-fill/nodebaseinfo.js

@@ -34,7 +34,14 @@ export default {
             params: form,
         })
     },
-    
+    //取消自动获取数据
+    async clearAutomatic(form) {
+        return HcApi({
+            url: '/api/blade-manager/nodebaseinfo/clearAutomatic',
+            method: 'get',
+            params: form,
+        })
+    },
     async getAllNodeBaseInfoByPkeyId(form) {
         return HcApi({
             url: '/api/blade-manager/nodebaseinfo/getAllNodeBaseInfoByPkeyId',

+ 2 - 1
src/global/components/table-form/index.vue

@@ -211,8 +211,9 @@ const onRightClick = async (pkeyId, event, KeyName, pid) => {
         const endPos = specialDom?.selectionEnd || 0
         console.log(specialDom, 'specialDom')
         const clearFormula = specialDom.getAttribute('clearFormula') || null
+        const clearautomatic = specialDom.getAttribute('clearautomatic') || null
       
-        emit('rightTap', { event, KeyName, startPos, endPos, pkeyId, pid, clearFormula })
+        emit('rightTap', { event, KeyName, startPos, endPos, pkeyId, pid, clearFormula, clearautomatic })
     } catch (error) {
         console.error('Error in onRightClick:', error)
     }

+ 56 - 2
src/views/data-fill/collapse-form/index.vue

@@ -1176,12 +1176,12 @@ const tableFormRightTap = (
 ) => {
     console.log(ele, 'ele')
     
-    const { event, KeyName, startPos, endPos, pkeyId, clearFormula } = ele
+    const { event, KeyName, startPos, endPos, pkeyId, clearFormula, clearautomatic } = ele
      const item = listDatas.value[index]
      console.log(item, 'item')
     //存储临时信息
     tableFormItemNode.value = { KeyName, index, startPos, endPos, pkeyId, initTableName:item.initTableName }
-    console.log(clearFormula, 'clearFormula1111111')
+
    // 先移除可能存在的旧菜单项
     tableFormMenu.value = tableFormMenu.value.filter(
         item => item.key !== 'cancelGs' && item.key !== 'addGs',
@@ -1199,6 +1199,28 @@ const tableFormRightTap = (
             key: 'addGs',
         })
     }  
+    console.log(clearautomatic, 'clearautomatic')
+    
+   // 先过滤掉可能存在的"取消自动获取数据"(避免重复添加)
+        tableFormMenu.value = tableFormMenu.value.filter(item => item.key !== 'clearautomatic')
+
+        if (clearautomatic === '1') {
+            // 条件满足时:添加"取消自动获取数据",并移除"设置自动获取数据"
+            tableFormMenu.value.push({
+                label: '取消自动获取数据',
+                key: 'clearautomatic',
+            })
+            tableFormMenu.value = tableFormMenu.value.filter(item => item.key !== 'auto')
+        } else {
+            // 条件不满足时:确保"设置自动获取数据"存在(如果原本没有可补充,若已有则保留)
+            const hasAutoItem = tableFormMenu.value.some(item => item.key === 'auto')
+            if (!hasAutoItem) {
+                tableFormMenu.value.push({
+                    label: '设置自动获取数据',
+                    key: 'auto',
+                })
+            }
+        }
 
      
     contextMenuRef.value?.showMenu(event, false) //展开菜单
@@ -1278,6 +1300,10 @@ const handleMenuSelect = async ({ key }) => {
 
         }
         getMajorDataTypeOptions()
+    } else if (key === 'clearautomatic') {
+        console.log('取消自动获取数据')
+
+        clearAutomatic(tableFormItemNode.value)
     } else if (key === 'pushCode') {
         pushCodeShow.value = true
 
@@ -2652,6 +2678,34 @@ const handleGsClick = async (item) => {
       window.$message.success(msg)
     } 
 }
+const clearAutomatic = async ()=>{
+    const { KeyName, pkeyId } = tableFormItemNode.value
+    const refs = await getFormRef(pkeyId)
+    const itemFormData = refs?.getFormData()
+   
+
+    const { error, code, msg, data } = await nodeBaseApi.clearAutomatic(
+
+        {
+            nodeId: treeId.value,
+            pkeyId: pkeyId,
+           
+          
+            paramName:KeyName,
+        },
+    )
+
+
+    if (!error && code === 200) {
+        console.log(data, 'data')
+        itemFormData[KeyName] = data
+        refs?.setFormData(itemFormData)
+       window.$message?.success(msg || '操作成功')
+       autoModalDialog.value = false
+
+
+    }
+}
 // 暴露出去
 defineExpose({
     getFormData,