From f7090a3271fafbf5c3b0435697a985055aaa94a7 Mon Sep 17 00:00:00 2001
From: wangting <675591594@qq.com>
Date: 星期五, 30 八月 2024 12:13:05 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/formDefine/components/formDialog.vue |  603 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 603 insertions(+), 0 deletions(-)

diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/formDefine/components/formDialog.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/formDefine/components/formDialog.vue
new file mode 100644
index 0000000..d93d6cd
--- /dev/null
+++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/formDefine/components/formDialog.vue
@@ -0,0 +1,603 @@
+<template>
+  <el-dialog
+    v-dialogDrag
+    v-loading="loading"
+    :visible.sync="visible"
+    append-to-body="true"
+    class="avue-dialog"
+    title="琛ㄥ崟"
+    width="100%"
+    @close="closeDialog"
+  >
+    <el-container>
+      <div style="height: 79vh;display: flex;width: 100%;">
+
+        <el-aside width="15%">
+          <basic-container>
+            <div style="height:650px;">
+              <avue-tree
+                :data="treeData"
+                :option="treeOption"
+                @node-drag-start="handleDragStart">
+              </avue-tree>
+            </div>
+          </basic-container>
+        </el-aside>
+
+        <el-main >
+          <basic-container>
+            <div style="height: 645px" @drop="drop"  @dragover.prevent>
+              <div style="display: flex;justify-content: center">
+                <span style="display: flex;align-items: center; margin-right: 5px;">
+                 <p class="tableTopLabel">鍚嶇О锛�</p>
+                 <el-input v-model="name" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+                </span>
+
+                <span style="display: flex;align-items: center; margin-right: 5px;">
+                 <p class="tableTopLabel">鏌ヨ妯℃澘鍚嶇О锛�</p>
+                 <el-input v-model="name" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+                </span>
+
+                <span style="display: flex;align-items: center; margin-right: 5px;">
+                 <p class="tableTopLabel">鏄剧ず鍒楁暟锛�</p>
+                 <el-input v-model="name" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+                  <el-button plain size="mini" style="margin-left: 3px" type="success">璁剧疆</el-button>
+                </span>
+
+                <span style="display: flex;align-items: center; margin-right: 5px;">
+                 <p class="tableTopLabel">浣嶇疆锛�</p>
+                 <el-input v-model="name" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+                  <el-button plain size="mini" style="margin-left: 3px" type="success">璋冩暣浣嶇疆</el-button>
+                </span>
+              </div>
+              <h3>椤甸潰瀹氫箟</h3>
+              <el-form ref="form" :model="form" :rules="rules" label-width="100px">
+                <el-row>
+                  <el-col :span="columnNumber">
+                    <el-tooltip v-for="(item,index) in formList" :key="index" :content="item.name" placement="top">
+                      <el-form-item class="hiddenLabel" :label="item.name + '锛�'">
+                        <el-input v-model="item.value" :splaceholder="item.name" size="mini"></el-input>
+                      </el-form-item>
+                    </el-tooltip>
+                  </el-col>
+                </el-row>
+              </el-form>
+            </div>
+            <div style="display: flex;justify-content: center;margin-top: 15px">
+              <el-button icon="el-icon-check" size="small" type="primary">淇濆瓨</el-button>
+              <el-button icon="el-icon-delete" plain size="small" type="danger">娓呯┖</el-button>
+              <el-button icon="el-icon-el-icon-close" plain size="small" type="primary">鍒犻櫎缁勪欢</el-button>
+              <el-button icon="el-icon-plus" plain size="small" type="primary">娣诲姞鑷畾涔夌粍浠�</el-button>
+              <el-button icon="el-icon-zoom-in" plain size="small" type="primary">棰勮</el-button>
+            </div>
+          </basic-container>
+        </el-main>
+
+        <el-aside width="25%">
+          <basic-container>
+            <div style="height: 700px; overflow-y: auto;padding-right: 10px">
+              <h3>璁剧疆</h3>
+              <el-form ref="form" :model="form" :rules="rules" label-position="left" label-width="85px">
+                <el-row style="border-bottom: 1px solid #878585;padding-bottom: 10px">
+                  <el-col :span="24">
+                    <el-form-item label="浣跨敤瀛楁">
+                      <div style="display: flex">
+                        <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+                        <el-checkbox v-model="checked" style="margin-left: 5px; margin-right: 5px">鍙</el-checkbox>
+                        <el-checkbox v-model="checked" style="margin-left: 5px;margin-right: 0px">蹇呭~</el-checkbox>
+                      </div>
+                    </el-form-item>
+                  </el-col>
+
+                  <el-col :span="12">
+                    <el-form-item label="鏄剧ず鍚嶇О">
+                      <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+                    </el-form-item>
+                  </el-col>
+
+                  <el-col :span="12">
+                    <el-form-item class="rightLabel" label="鏄剧ず绫诲瀷">
+                      <el-select v-model="form.region" placeholder="璇烽�夋嫨娲诲姩鍖哄煙" size="mini">
+                        <el-option label="鍖哄煙涓�" value="shanghai"></el-option>
+                        <el-option label="鍖哄煙浜�" value="beijing"></el-option>
+                      </el-select>
+                    </el-form-item>
+                  </el-col>
+
+                  <el-col :span="24">
+                    <el-tooltip content="榛樿鍊艰〃杈惧紡" placement="top">
+                      <el-form-item class="hiddenLabel" label="榛樿鍊艰〃杈惧紡">
+                        <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+                      </el-form-item>
+                    </el-tooltip>
+                  </el-col>
+
+                  <el-col :span="24">
+                    <!--                    <el-tooltip content="鏄剧ず琛ㄨ揪寮�" placement="top">-->
+                    <el-form-item label="鏄剧ず琛ㄨ揪寮�">
+                      <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+                    </el-form-item>
+                    <!--                    </el-tooltip>-->
+                  </el-col>
+
+                  <el-col :span="24">
+                    <el-tooltip content="鏃ユ湡鏍煎紡鍖栧瓧绗︿覆" placement="top">
+                      <el-form-item class="hiddenLabel" label="鏃ユ湡鏍煎紡鍖栧瓧绗︿覆锛�">
+                        <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+                      </el-form-item>
+                    </el-tooltip>
+                  </el-col>
+
+                  <el-col :span="24">
+                    <el-form-item label="鍗犱綅鏂瑰紡">
+                      <el-radio v-model="treeRadio" label="0">鏄剧ず</el-radio>
+                      <el-radio v-model="treeRadio" label="1">涓嶆樉绀�</el-radio>
+                    </el-form-item>
+                  </el-col>
+
+                  <el-col :span="24" style="height: 90px">
+                    <el-form-item label="瀛楁琛ㄨ揪寮�">
+                      <el-input
+                        v-model="textarea2"
+                        :rows="3"
+                        placeholder="璇疯緭鍏ュ唴瀹�"
+                        resize="none"
+                        type="textarea">
+                      </el-input>
+                    </el-form-item>
+                  </el-col>
+
+                  <el-col :span="24" style="height: 90px">
+                    <el-tooltip content="鍙閫夋嫨鏉′欢" placement="top">
+                      <el-form-item class="hiddenLabel" label="鍙閫夋嫨鏉′欢">
+                        <el-input
+                          v-model="textarea2"
+                          :rows="3"
+                          placeholder="璇疯緭鍏ュ唴瀹�"
+                          resize="none"
+                          type="textarea">
+                        </el-input>
+                      </el-form-item>
+                    </el-tooltip>
+                  </el-col>
+
+                  <el-col :span="12">
+                    <el-form-item label="鎺у埗鍒�">
+                      <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+                    </el-form-item>
+                  </el-col>
+
+                  <el-col :span="12">
+                    <el-form-item class="rightLabel" label="鏄剧ず鍒楁潯浠�" label-width="95px">
+                      <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+                    </el-form-item>
+                  </el-col>
+
+                  <el-col :span="24">
+                    <el-form-item label="鏉冮檺鎺у埗">
+                      <div style="display: flex;align-items: center">
+                        <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+                        <el-button plain size="mini" style="margin-left: 3px" type="success">閫夋嫨</el-button>
+                      </div>
+                    </el-form-item>
+                  </el-col>
+
+                </el-row>
+                <el-row style="margin-top: 10px;border-bottom: 1px solid #878585;padding-bottom: 10px">
+                  <el-col :span="24" style="height: 90px">
+                    <el-form-item label="鑴氭湰楠岃瘉">
+                      <el-input
+                        v-model="textarea2"
+                        :rows="3"
+                        placeholder="璇疯緭鍏ュ唴瀹�"
+                        resize="none"
+                        type="textarea">
+                      </el-input>
+                    </el-form-item>
+                  </el-col>
+
+                  <el-col :span="24" style="height: 90px">
+                    <el-form-item label="鎻愮ず鏂囧瓧">
+                      <el-input
+                        v-model="textarea2"
+                        :rows="3"
+                        placeholder="璇疯緭鍏ュ唴瀹�"
+                        resize="none"
+                        type="textarea">
+                      </el-input>
+                    </el-form-item>
+                  </el-col>
+
+                  <el-col :span="24">
+                    <el-form-item label="鏌ヨ鍏宠仈鍒�">
+                      <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+                    </el-form-item>
+                  </el-col>
+
+                  <el-col :span="24">
+                    <el-form-item label="鑷畾涔夌被">
+                      <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+                    </el-form-item>
+                  </el-col>
+
+                  <el-col :span="24">
+                    <el-form-item label="瀛樺偍璺緞">
+                      <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+                    </el-form-item>
+                  </el-col>
+
+                  <el-col :span="24">
+                    <el-tooltip content="瀛樺偍璺緞瀛楁" placement="top">
+                      <el-form-item class="hiddenLabel" label="瀛樺偍璺緞瀛楁">
+                        <div style="display: flex">
+                          <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+                          <el-checkbox v-model="checked" style="margin-left: 5px">http瀛樺偍</el-checkbox>
+                        </div>
+                      </el-form-item>
+                    </el-tooltip>
+                  </el-col>
+
+                </el-row>
+
+                <el-row style="margin-top: 10px;border-bottom: 1px solid #878585;padding-bottom: 10px">
+                  <h4>閫夐」鍒楄〃</h4>
+                  <el-col :span="12">
+                    <el-form-item label="鍚嶇О">
+                      <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+                    </el-form-item>
+                  </el-col>
+
+                  <el-col :span="12">
+                    <el-form-item class="rightLabel" label="鍊�" label-width="95px">
+                      <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+                    </el-form-item>
+                  </el-col>
+
+                  <el-col :span="24" style="height: 190px">
+                    <el-form-item>
+                      <div style="height: 150px; width: 100%; border: 1px solid #bdbbbb;overflow-y: auto">
+                        <el-table
+                          :data="optionRightData"
+                          :highlight-current-row="true"
+                          :show-header="false"
+                          border
+                          stripe
+                          style="width: 100%">
+                          <el-table-column
+                            align="center"
+                            label="鍚嶇О"
+                            prop="name">
+                            <template slot-scope="scope">
+                              <el-tag size="medium">{{ scope.row.name }}</el-tag>
+                            </template>
+                          </el-table-column>
+                          <el-table-column
+                            align="center"
+                            label="鍊�"
+                            prop="value">
+                            <template slot-scope="scope">
+                              <el-tag size="medium">{{ scope.row.value }}</el-tag>
+                            </template>
+                          </el-table-column>
+                        </el-table>
+                      </div>
+                      <div style="display: flex;align-items: center;justify-content: center;margin-top: 5px">
+                        <el-button plain size="mini" style="margin-right: 5px" type="success">娣诲姞</el-button>
+                        <el-button plain size="mini" style="margin-left: 5px" type="danger">鍒犻櫎</el-button>
+                      </div>
+                    </el-form-item>
+                  </el-col>
+
+                  <el-col :span="24">
+                    <el-form-item label="涓�绾у弬鐓�">
+                      <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+                    </el-form-item>
+                  </el-col>
+
+                  <el-col :span="24">
+                    <el-form-item label="浜岀骇鍙傜収">
+                      <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+                    </el-form-item>
+                  </el-col>
+
+                  <el-col :span="24">
+                    <el-form-item label="鍙傜収鍊�">
+                      <el-input v-model="user" placeholder="璇疯緭鍏ュ唴瀹�" size="mini"></el-input>
+                    </el-form-item>
+                  </el-col>
+                </el-row>
+
+                <el-row style="margin-top: 10px">
+                  <el-col :span="24" style="height: 90px">
+                    <el-form-item label="闄勫姞灞炴��">
+                      <el-input
+                        v-model="textarea2"
+                        :rows="3"
+                        placeholder="璇疯緭鍏ュ唴瀹�"
+                        resize="none"
+                        type="textarea">
+                      </el-input>
+                    </el-form-item>
+                  </el-col>
+                </el-row>
+
+              </el-form>
+            </div>
+          </basic-container>
+        </el-aside>
+
+      </div>
+
+    </el-container>
+  </el-dialog>
+</template>
+
+<script>
+
+export default {
+  name: "formDialog",
+  data() {
+    return {
+      formList:[],
+      optionRightData: [
+        {
+          name: 'test',
+          value: 'test'
+        }
+      ],
+      form: {},
+      rules: {},
+      columnNumber: 12,
+      loading: false,
+      visible: false,
+      treeOption: {
+        menu: false,
+        addBtn: false,
+        draggable: true,
+        allowDrop: () => {
+          return false;
+        },
+        allowDrag: () => {
+          return true;
+        },
+        // props: {
+        //   label: 'name',
+        //   value: 'id',
+        //   children: 'children',
+        // },
+      },
+      treeData: [
+        {
+          value: 0,
+          label: '涓�绾ч儴闂�',
+          children: [
+            {
+              value: 1,
+              label: '涓�绾ч儴闂�1',
+            }, {
+              value: 2,
+              label: '涓�绾ч儴闂�2',
+            }
+          ]
+        }, {
+          value: 3,
+          label: '浜岀骇閮ㄩ棬',
+          children: [
+            {
+              value: 4,
+              label: '浜岀骇閮ㄩ棬1',
+            }, {
+              value: 5,
+              label: '浜岀骇閮ㄩ棬2',
+            }
+          ]
+        },
+        {
+          value: 0,
+          label: '涓�绾ч儴闂�',
+          children: [
+            {
+              value: 1,
+              label: '涓�绾ч儴闂�1',
+            }, {
+              value: 2,
+              label: '涓�绾ч儴闂�2',
+            }
+          ]
+        }, {
+          value: 3,
+          label: '浜岀骇閮ㄩ棬',
+          children: [
+            {
+              value: 4,
+              label: '浜岀骇閮ㄩ棬1',
+            }, {
+              value: 5,
+              label: '浜岀骇閮ㄩ棬2',
+            }
+          ]
+        },
+        {
+          value: 0,
+          label: '涓�绾ч儴闂�',
+          children: [
+            {
+              value: 1,
+              label: '涓�绾ч儴闂�1',
+            }, {
+              value: 2,
+              label: '涓�绾ч儴闂�2',
+            }
+          ]
+        }, {
+          value: 3,
+          label: '浜岀骇閮ㄩ棬',
+          children: [
+            {
+              value: 4,
+              label: '浜岀骇閮ㄩ棬1',
+            }, {
+              value: 5,
+              label: '浜岀骇閮ㄩ棬2',
+            }
+          ]
+        },
+        {
+          value: 0,
+          label: '涓�绾ч儴闂�',
+          children: [
+            {
+              value: 1,
+              label: '涓�绾ч儴闂�1',
+            }, {
+              value: 2,
+              label: '涓�绾ч儴闂�2',
+            }
+          ]
+        }, {
+          value: 3,
+          label: '浜岀骇閮ㄩ棬',
+          children: [
+            {
+              value: 4,
+              label: '浜岀骇閮ㄩ棬1',
+            }, {
+              value: 5,
+              label: '浜岀骇閮ㄩ棬2',
+            }
+          ]
+        },
+        {
+          value: 0,
+          label: '涓�绾ч儴闂�',
+          children: [
+            {
+              value: 1,
+              label: '涓�绾ч儴闂�1',
+            }, {
+              value: 2,
+              label: '涓�绾ч儴闂�2',
+            }
+          ]
+        }, {
+          value: 3,
+          label: '浜岀骇閮ㄩ棬',
+          children: [
+            {
+              value: 4,
+              label: '浜岀骇閮ㄩ棬1',
+            }, {
+              value: 5,
+              label: '浜岀骇閮ㄩ棬2',
+            }
+          ]
+        },
+        {
+          value: 0,
+          label: '涓�绾ч儴闂�',
+          children: [
+            {
+              value: 1,
+              label: '涓�绾ч儴闂�1',
+            }, {
+              value: 2,
+              label: '涓�绾ч儴闂�2',
+            }
+          ]
+        }, {
+          value: 3,
+          label: '浜岀骇閮ㄩ棬',
+          children: [
+            {
+              value: 4,
+              label: '浜岀骇閮ㄩ棬1',
+            }, {
+              value: 5,
+              label: '浜岀骇閮ㄩ棬2',
+            }
+          ]
+        },
+        {
+          value: 0,
+          label: '涓�绾ч儴闂�',
+          children: [
+            {
+              value: 1,
+              label: '涓�绾ч儴闂�1',
+            }, {
+              value: 2,
+              label: '涓�绾ч儴闂�2',
+            }
+          ]
+        }, {
+          value: 3,
+          label: '浜岀骇閮ㄩ棬',
+          children: [
+            {
+              value: 4,
+              label: '浜岀骇閮ㄩ棬1',
+            }, {
+              value: 5,
+              label: '浜岀骇閮ㄩ棬2',
+            }
+          ]
+        }
+      ]
+    }
+  },
+  methods: {
+    // 鍏抽棴瀵硅瘽妗�
+    closeDialog() {
+    },
+
+    // 寮�濮嬫嫋鎷芥爲鑺傜偣浜嬩欢
+    handleDragStart(node, ev) {
+      // 浣跨敤 setData 鏂规硶璁剧疆鏁版嵁
+      ev.dataTransfer.setData('item', JSON.stringify(node.data));
+    },
+
+    // 鎷栨嫿鍒拌〃鍗曟椂
+    drop(event) {
+      // 浣跨敤 getData 鏂规硶鑾峰彇鏁版嵁
+      const data = JSON.parse(event.dataTransfer.getData('item'));
+      console.log('data', data);
+      const params = {
+        name:data.label,
+        value:'',
+        type:''
+      }
+      this.formList.push(params)
+    }
+  }
+}
+</script>
+
+<style lang="scss" scoped>
+::v-deep {
+  .hiddenLabel {
+    .el-form-item__label {
+      white-space: nowrap; // 闃叉鎹㈣
+      overflow: hidden; //闅愯棌瓒呭嚭閮ㄥ垎
+      text-overflow: ellipsis; //鏄剧ず鐪佺暐鍙�
+    }
+  }
+
+  .el-col {
+    margin-bottom: 0px;
+    height: 40px;
+  }
+
+  .rightLabel {
+    .el-form-item__label {
+      text-align: right !important;
+    }
+  }
+}
+
+.tableTopLabel {
+  display: flex;
+  flex-shrink: 0 !important;
+  font-size: 14px
+}
+
+</style>

--
Gitblit v1.9.3