| | |
| | | :visible.sync="visible" |
| | | append-to-body="true" |
| | | class="avue-dialog" |
| | | title="" |
| | | title="表单" |
| | | width="100%" |
| | | @close="closeDialog" |
| | | > |
| | | <el-container> |
| | | <div style="height: 80vh;display: flex;width: 100%;"> |
| | | <div style="height: 79vh;display: flex;width: 100%;"> |
| | | |
| | | <el-aside width="15%"> |
| | | <basic-container> |
| | | <div style="height:650px;"> |
| | | <avue-tree |
| | | :data="treeData" |
| | | :option="treeOption"></avue-tree> |
| | | :option="treeOption" |
| | | @node-drag-start="handleDragStart"> |
| | | </avue-tree> |
| | | </div> |
| | | </basic-container> |
| | | </el-aside> |
| | | |
| | | <el-main> |
| | | <el-main > |
| | | <basic-container> |
| | | <div style="height: 650px"> |
| | | <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-form ref="form" :model="form" :rules="rules" label-width="100px"> |
| | | <el-row> |
| | | <el-col :span="columnNumber"> |
| | | <el-tooltip content="categoryoid.lastmodifytime" placement="top"> |
| | | <el-form-item class="hiddenLabel" label="categoryoid.lastmodifytime"> |
| | | <el-input v-model="user" placeholder="审批人"></el-input> |
| | | <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-col :span="24"> |
| | | <el-tooltip content="默认值表达式" placement="top"> |
| | | <el-form-item label="默认值表达式" class="hiddenLabel"> |
| | | <el-form-item class="hiddenLabel" label="默认值表达式"> |
| | | <el-input v-model="user" placeholder="请输入内容" size="mini"></el-input> |
| | | </el-form-item> |
| | | </el-tooltip> |
| | |
| | | |
| | | <el-col :span="24"> |
| | | <el-tooltip content="日期格式化字符串" placement="top"> |
| | | <el-form-item label="日期格式化字符串:" class="hiddenLabel"> |
| | | <el-form-item class="hiddenLabel" label="日期格式化字符串:"> |
| | | <el-input v-model="user" placeholder="请输入内容" size="mini"></el-input> |
| | | </el-form-item> |
| | | </el-tooltip> |
| | |
| | | |
| | | <el-col :span="24" style="height: 90px"> |
| | | <el-tooltip content="只读选择条件" placement="top"> |
| | | <el-form-item label="只读选择条件" class="hiddenLabel"> |
| | | <el-form-item class="hiddenLabel" label="只读选择条件"> |
| | | <el-input |
| | | v-model="textarea2" |
| | | :rows="3" |
| | |
| | | </el-col> |
| | | |
| | | </el-row> |
| | | <el-row style="margin-top: 10px;border-bottom: 1px solid #878585;padding-bottom: 10px""> |
| | | <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 |
| | |
| | | </el-col> |
| | | |
| | | <el-col :span="24"> |
| | | <el-form-item label="存储路径" > |
| | | <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 label="存储路径字段" class="hiddenLabel"> |
| | | <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-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-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | |
| | | </el-form> |
| | | </div> |
| | | </basic-container> |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | |
| | | export default { |
| | | name: "formDialog", |
| | | data() { |
| | | return { |
| | | formList:[], |
| | | optionRightData: [ |
| | | { |
| | | name: 'test', |
| | | value: 'test' |
| | | } |
| | | ], |
| | | form: {}, |
| | | rules: {}, |
| | | columnNumber: 12, |
| | |
| | | treeOption: { |
| | | menu: false, |
| | | addBtn: false, |
| | | draggable: true, |
| | | allowDrop: () => { |
| | | return false; |
| | | }, |
| | | allowDrag: () => { |
| | | return true; |
| | | }, |
| | | // props: { |
| | | // label: 'name', |
| | | // value: 'id', |
| | |
| | | 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) |
| | | } |
| | | } |
| | | } |
| | |
| | | |
| | | <style lang="scss" scoped> |
| | | ::v-deep { |
| | | .hiddenLabel{ |
| | | .hiddenLabel { |
| | | .el-form-item__label { |
| | | white-space: nowrap; // 防止换行 |
| | | overflow: hidden; //隐藏超出部分 |