| | |
| | | width="65%" |
| | | @close="addEscHandler" |
| | | > |
| | | <el-form ref="form" :model="form" :rules="rules" label-width="120px"> |
| | | <el-row> |
| | | <div class="addDialog"> |
| | | <div> |
| | | <h3>属性项</h3> |
| | | <el-col :span="12"> |
| | | <el-form-item label="名称:" prop="id"> |
| | | <el-input v-model="form.id"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="标签:" prop="name"> |
| | | <el-input v-model="form.name"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="属性类型:" prop="attributeDataType"> |
| | | <el-select v-model="form.attributeDataType" placeholder="请选择属性类型" @change="attributeDataTypeChange"> |
| | | <el-option v-for="item in typeSelectList" :label="item" :value="item"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="描述:" prop="description"> |
| | | <el-input v-model="form.description" :rows="2" type="textarea"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | |
| | | </div> |
| | | <div v-if="!hideType" class="addDialogBottom"> |
| | | <div class="left"> |
| | | <h3>{{ form.attributeDataType }}</h3> |
| | | |
| | | <el-form-item |
| | | v-if="form.attributeDataType !== 'VTInteger' && form.attributeDataType !== 'VTLong' |
| | | && form.attributeDataType !== 'VTDouble' && form.attributeDataType !== 'VTBoolean'" |
| | | label="长度:" prop="attrLength"> |
| | | <el-input v-model="form.attrLength"></el-input> |
| | | </el-form-item> |
| | | |
| | | <el-form-item v-if="form.attributeDataType === 'VTDouble'" label="精度:" prop="precisionLength"> |
| | | <el-input v-model="form.precisionLength"></el-input> |
| | | </el-form-item> |
| | | |
| | | <el-form-item v-if="form.attributeDataType === 'VTDouble'" label="长度:" prop="scaleLength"> |
| | | <el-input v-model="form.scaleLength"></el-input> |
| | | </el-form-item> |
| | | |
| | | |
| | | <el-form-item v-if="form.attributeDataType !== 'VTBoolean' && !form.enumSwitch" label="默认值:" |
| | | prop="defaultValue"> |
| | | <el-input v-model="form.defaultValue"></el-input> |
| | | </el-form-item> |
| | | |
| | | <el-form-item v-if="form.attributeDataType === 'VTBoolean'" label="默认值:" prop="defaultValue"> |
| | | <el-select v-model="form.defaultValue"> |
| | | <el-option label="false" value="false"></el-option> |
| | | <el-option label="true" value="true"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item v-if="form.attributeDataType !== 'VTBoolean' && form.enumSwitch" label="默认值:" |
| | | prop="defaultValue"> |
| | | <el-select v-model="form.defaultValue"> |
| | | <el-option v-for="(item,index) in rangeOptionValue" :key="index" :label="item" |
| | | :value="item"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="允许为空:" prop="nullableFlag"> |
| | | <el-switch v-model="form.nullableFlag"></el-switch> |
| | | </el-form-item> |
| | | <div style="height: 650px"> |
| | | <el-form ref="form" :model="form" :rules="rules" label-width="120px" size="small"> |
| | | <el-row> |
| | | <div class="addDialog"> |
| | | <div> |
| | | <h3>属性项</h3> |
| | | <el-col :span="12"> |
| | | <el-form-item label="名称:" prop="id"> |
| | | <el-input v-model="form.id"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="标签:" prop="name"> |
| | | <el-input v-model="form.name"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="属性类型:" prop="attributeDataType"> |
| | | <el-select v-model="form.attributeDataType" placeholder="请选择属性类型" @change="attributeDataTypeChange"> |
| | | <el-option v-for="item in typeSelectList" :label="item" :value="item"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <el-form-item label="描述:" prop="description"> |
| | | <el-input v-model="form.description" :rows="2" type="textarea"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | |
| | | </div> |
| | | <el-divider direction="vertical"></el-divider> |
| | | <!-- VTString --> |
| | | <div v-if="form.attributeDataType === 'VTString'" class="right"> |
| | | <h3>值域</h3> |
| | | <el-form-item label="当前值域类型:" prop="attributeSelectType"> |
| | | <el-select v-model="form.attributeSelectType" placeholder="请选择属性类型" |
| | | @change="attributeSelectTypeChange"> |
| | | <el-option label="业务类型" value="business"></el-option> |
| | | <el-option label="链接类型" value="link"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <div v-if="!hideType" class="addDialogBottom"> |
| | | <div class="left"> |
| | | <h3>{{ form.attributeDataType }}</h3> |
| | | |
| | | <el-form-item v-if="form.attributeSelectType === 'link'" label="版本次:" prop="version"> |
| | | <el-select v-model="form.version" placeholder="请选择版本次"> |
| | | <el-option :value="1" label="当前版本次"></el-option> |
| | | <el-option :value="3" label="最新版本次"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item |
| | | v-if="form.attributeDataType !== 'VTInteger' && form.attributeDataType !== 'VTLong' |
| | | && form.attributeDataType !== 'VTDouble' && form.attributeDataType !== 'VTBoolean'" |
| | | label="长度:" prop="attrLength"> |
| | | <el-input v-model="form.attrLength"></el-input> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="选择参照类型:" prop="referValue"> |
| | | <el-input v-model="form.referValue" @focus="referFormFocusHandler"></el-input> |
| | | </el-form-item> |
| | | <el-form-item v-if="form.attributeDataType === 'VTDouble'" label="精度:" prop="precisionLength"> |
| | | <el-input v-model="form.precisionLength"></el-input> |
| | | </el-form-item> |
| | | |
| | | <span v-if="!form.referValue"> |
| | | <el-form-item v-if="form.attributeDataType === 'VTDouble'" label="长度:" prop="scaleLength"> |
| | | <el-input v-model="form.scaleLength"></el-input> |
| | | </el-form-item> |
| | | |
| | | |
| | | <el-form-item v-if="form.attributeDataType !== 'VTBoolean' && !form.enumSwitch" label="默认值:" |
| | | prop="defaultValue"> |
| | | <el-input v-model="form.defaultValue"></el-input> |
| | | </el-form-item> |
| | | |
| | | <el-form-item v-if="form.attributeDataType === 'VTBoolean'" label="默认值:" prop="defaultValue"> |
| | | <el-select v-model="form.defaultValue"> |
| | | <el-option label="false" value="false"></el-option> |
| | | <el-option label="true" value="true"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item v-if="form.attributeDataType !== 'VTBoolean' && form.enumSwitch" label="默认值:" |
| | | prop="defaultValue"> |
| | | <el-select v-model="form.defaultValue"> |
| | | <el-option v-for="(item,index) in rangeOptionValue" :key="index" :label="item" |
| | | :value="item"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="允许为空:" prop="nullableFlag"> |
| | | <el-switch v-model="form.nullableFlag"></el-switch> |
| | | </el-form-item> |
| | | |
| | | </div> |
| | | <el-divider direction="vertical"></el-divider> |
| | | <!-- VTString --> |
| | | <div v-if="form.attributeDataType === 'VTString'" class="right"> |
| | | <h3>值域</h3> |
| | | <el-form-item label="当前值域类型:" prop="attributeSelectType"> |
| | | <el-select v-model="form.attributeSelectType" placeholder="请选择属性类型" |
| | | @change="attributeSelectTypeChange"> |
| | | <el-option label="业务类型" value="business"></el-option> |
| | | <el-option label="链接类型" value="link"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | |
| | | <el-form-item v-if="form.attributeSelectType === 'link'" label="版本次:" prop="version"> |
| | | <el-select v-model="form.version" placeholder="请选择版本次"> |
| | | <el-option :value="1" label="当前版本次"></el-option> |
| | | <el-option :value="3" label="最新版本次"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | |
| | | <el-form-item label="选择参照类型:" prop="referValue"> |
| | | <el-input v-model="form.referValue" @focus="referFormFocusHandler"></el-input> |
| | | </el-form-item> |
| | | |
| | | <span v-if="!form.referValue"> |
| | | <el-form-item label="使用枚举:" prop="enumSwitch"> |
| | | <el-switch v-model="form.enumSwitch" @change="switchEnumChange"></el-switch> |
| | | </el-form-item> |
| | |
| | | </textarea> |
| | | </el-form-item> |
| | | </span> |
| | | </div> |
| | | <!-- VTInteger VTLong --> |
| | | <div v-if="form.attributeDataType === 'VTInteger' || form.attributeDataType === 'VTLong' " class="right"> |
| | | <h3>值域</h3> |
| | | </div> |
| | | <!-- VTInteger VTLong --> |
| | | <div v-if="form.attributeDataType === 'VTInteger' || form.attributeDataType === 'VTLong' " |
| | | class="right"> |
| | | <h3>值域</h3> |
| | | |
| | | <el-form-item label="使用枚举:" prop="enumSwitch"> |
| | | <el-switch v-model="form.enumSwitch" @change="switchEnumChange"></el-switch> |
| | | </el-form-item> |
| | | <el-form-item label="使用枚举:" prop="enumSwitch"> |
| | | <el-switch v-model="form.enumSwitch" @change="switchEnumChange"></el-switch> |
| | | </el-form-item> |
| | | |
| | | |
| | | <el-form-item :label="form.enumSwitch ? '枚举选择:' : '添加值域:'" prop="enumSwitch"> |
| | | <el-select v-if="form.enumSwitch" v-model="form.enumId" placeholder="请选择枚举类型" |
| | | @change="enumSelectChange"> |
| | | <el-option v-for="(item,index) in attributeDataTypePickList" :key="index" :label="item.key" |
| | | :value="item.key"></el-option> |
| | | </el-select> |
| | | <el-input v-if="!form.enumSwitch" v-model="form.enumAddValue"> |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item v-if="!form.enumSwitch" label="运算符:"> |
| | | <div> |
| | | <el-button size="mini" @click="operationHandler('>')"> ></el-button> |
| | | <el-button size="mini" @click="operationHandler('<')"> <</el-button> |
| | | <el-button size="mini" @click="operationHandler('>=')"> >=</el-button> |
| | | <el-button size="mini" @click="operationHandler('<=')"> <=</el-button> |
| | | <el-button size="mini" @click="operationHandler('=')"> =</el-button> |
| | | <el-button size="mini" @click="operationHandler('!=')"> !=</el-button> |
| | | <el-button size="mini" @click="operationHandler('()')"> ([])</el-button> |
| | | </div> |
| | | </el-form-item> |
| | | <el-form-item :label="form.enumSwitch ? '当前枚举值:' : '当前值域:'" prop="rangeValue"> |
| | | <el-form-item :label="form.enumSwitch ? '枚举选择:' : '添加值域:'" prop="enumSwitch"> |
| | | <el-select v-if="form.enumSwitch" v-model="form.enumId" placeholder="请选择枚举类型" |
| | | @change="enumSelectChange"> |
| | | <el-option v-for="(item,index) in attributeDataTypePickList" :key="index" :label="item.key" |
| | | :value="item.key"></el-option> |
| | | </el-select> |
| | | <el-input v-if="!form.enumSwitch" v-model="form.enumAddValue"> |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item v-if="!form.enumSwitch" label="运算符:"> |
| | | <div> |
| | | <el-button size="mini" @click="operationHandler('>')"> ></el-button> |
| | | <el-button size="mini" @click="operationHandler('<')"> <</el-button> |
| | | <el-button size="mini" @click="operationHandler('>=')"> >=</el-button> |
| | | <el-button size="mini" @click="operationHandler('<=')"> <=</el-button> |
| | | <el-button size="mini" @click="operationHandler('=')"> =</el-button> |
| | | <el-button size="mini" @click="operationHandler('!=')"> !=</el-button> |
| | | <el-button size="mini" @click="operationHandler('()')"> ([])</el-button> |
| | | </div> |
| | | </el-form-item> |
| | | <el-form-item :label="form.enumSwitch ? '当前枚举值:' : '当前值域:'" prop="rangeValue"> |
| | | <textarea v-model="form.rangeValue" :readonly="form.enumSwitch" |
| | | style="width: 330px; height: 80px; border: 1px solid #DCDFE6; overflow: auto; text-align: left;resize: none;"> |
| | | </textarea> |
| | | </el-form-item> |
| | | </div> |
| | | <!-- VTDouble --> |
| | | <div v-if="form.attributeDataType === 'VTDouble'" class="right"> |
| | | <h3>值域</h3> |
| | | <el-form-item :label="form.enumSwitch ? '枚举选择:' : '添加值域:'" prop="enumAddValue"> |
| | | <el-input v-model="form.enumAddValue"> |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item label="运算符:"> |
| | | <div> |
| | | <el-button size="mini" @click="operationHandler('>')"> ></el-button> |
| | | <el-button size="mini" @click="operationHandler('<')"> <</el-button> |
| | | <el-button size="mini" @click="operationHandler('>=')"> >=</el-button> |
| | | <el-button size="mini" @click="operationHandler('<=')"> <=</el-button> |
| | | <el-button size="mini" @click="operationHandler('=')"> =</el-button> |
| | | <el-button size="mini" @click="operationHandler('!=')"> !=</el-button> |
| | | <el-button size="mini" @click="operationHandler('()')">([])</el-button> |
| | | </div> |
| | | </el-form-item> |
| | | <el-form-item :label="form.enumSwitch ? '当前枚举值:' : '当前值域:'" prop="rangeValue"> |
| | | </el-form-item> |
| | | </div> |
| | | <!-- VTDouble --> |
| | | <div v-if="form.attributeDataType === 'VTDouble'" class="right"> |
| | | <h3>值域</h3> |
| | | <el-form-item :label="form.enumSwitch ? '枚举选择:' : '添加值域:'" prop="enumAddValue"> |
| | | <el-input v-model="form.enumAddValue"> |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item label="运算符:"> |
| | | <div> |
| | | <el-button size="mini" @click="operationHandler('>')"> ></el-button> |
| | | <el-button size="mini" @click="operationHandler('<')"> <</el-button> |
| | | <el-button size="mini" @click="operationHandler('>=')"> >=</el-button> |
| | | <el-button size="mini" @click="operationHandler('<=')"> <=</el-button> |
| | | <el-button size="mini" @click="operationHandler('=')"> =</el-button> |
| | | <el-button size="mini" @click="operationHandler('!=')"> !=</el-button> |
| | | <el-button size="mini" @click="operationHandler('()')">([])</el-button> |
| | | </div> |
| | | </el-form-item> |
| | | <el-form-item :label="form.enumSwitch ? '当前枚举值:' : '当前值域:'" prop="rangeValue"> |
| | | <textarea v-model="form.rangeValue" |
| | | style="width: 330px; height: 80px; border: 1px solid #DCDFE6; overflow: auto; text-align: left;resize: none;"> |
| | | </textarea> |
| | | </el-form-item> |
| | | </el-form-item> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </el-row> |
| | | </el-form> |
| | | </el-row> |
| | | </el-form> |
| | | |
| | | <!-- 业务类型对话框 --> |
| | | <el-dialog |
| | | v-dialogDrag |
| | | :visible.sync="businessVisible" |
| | | append-to-body="true" |
| | | class="avue-dialog" |
| | | title="业务类型选择" |
| | | width="70%" |
| | | > |
| | | <avue-crud |
| | | ref="businessCrud" |
| | | :data="businessData" |
| | | :option="businessOption" |
| | | :table-loading="businessLoading" |
| | | @search-change="businessHandleSearch" |
| | | @search-reset="businessHandleReset" |
| | | @row-click="businessRowClick" |
| | | <!-- 业务类型对话框 --> |
| | | <el-dialog |
| | | v-dialogDrag |
| | | :visible.sync="businessVisible" |
| | | append-to-body="true" |
| | | class="avue-dialog" |
| | | title="业务类型选择" |
| | | width="70%" |
| | | > |
| | | </avue-crud> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <avue-crud |
| | | ref="businessCrud" |
| | | :data="businessData" |
| | | :option="businessOption" |
| | | :table-loading="businessLoading" |
| | | @search-change="businessHandleSearch" |
| | | @search-reset="businessHandleReset" |
| | | @row-click="businessRowClick" |
| | | > |
| | | </avue-crud> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="businessEmpty">清 空</el-button> |
| | | <el-button @click="businessVisible = false">取 消</el-button> |
| | | <el-button type="primary" @click="businessSaveHandler">确 定</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | </el-dialog> |
| | | |
| | | <!-- 链接类型对话框 --> |
| | | <el-dialog |
| | | v-dialogDrag |
| | | :visible.sync="linkTypeVisible" |
| | | append-to-body="true" |
| | | class="avue-dialog" |
| | | title="链接类型选择" |
| | | width="70%" |
| | | > |
| | | <avue-crud |
| | | ref="linkTypeCrud" |
| | | :data="linkTypeData" |
| | | :option="linkTypeOption" |
| | | :table-loading="linkTypeLoading" |
| | | @search-change="linkHandleSearch" |
| | | @search-reset="linkHandleReset" |
| | | @row-click="linkRowClick" |
| | | <!-- 链接类型对话框 --> |
| | | <el-dialog |
| | | v-dialogDrag |
| | | :visible.sync="linkTypeVisible" |
| | | append-to-body="true" |
| | | class="avue-dialog" |
| | | title="链接类型选择" |
| | | width="70%" |
| | | > |
| | | </avue-crud> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <avue-crud |
| | | ref="linkTypeCrud" |
| | | :data="linkTypeData" |
| | | :option="linkTypeOption" |
| | | :table-loading="linkTypeLoading" |
| | | @search-change="linkHandleSearch" |
| | | @search-reset="linkHandleReset" |
| | | @row-click="linkRowClick" |
| | | > |
| | | </avue-crud> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="linkEmpty">清 空</el-button> |
| | | <el-button @click="linkTypeVisible = false">取 消</el-button> |
| | | <el-button type="primary" @click="linkSaveHandler">确 定</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | </el-dialog> |
| | | </div> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="addEscHandler">取 消</el-button> |
| | | <el-button type="primary" @click="addSaveHandler">确 定</el-button> |
| | |
| | | }); |
| | | } |
| | | }, |
| | | watch: {}, |
| | | methods: { |
| | | //表格查询请求 |
| | | getTableList() { |
| | |
| | | this.form.attributeSelectType = 'link' |
| | | this.form.referValue = row.linkTypeName; |
| | | } |
| | | if (!row.btmTypeId && !row.linkTypeName) { |
| | | this.form.attributeSelectType = 'business' |
| | | this.form.referValue = row.btmTypeId; |
| | | } |
| | | // console.log(row); |
| | | |
| | | this.getEnumMapByTypeHandler(this.form.attributeDataType) |
| | | this.getEnumMapByTypeHandler(this.form.attributeDataType); |
| | | this.addVisible = true; |
| | | |
| | | }, |
| | |
| | | |
| | | // 选择参照 |
| | | referFormFocusHandler() { |
| | | this.form.enumSwitch = false; |
| | | this.form.rangeValue = ""; |
| | | this.form.enumId = ""; |
| | | const handlers = { |
| | | business: () => { |
| | | this.businessVisible = true; |
| | |
| | | |
| | | this.form.referValue = this.businessRow.name; |
| | | this.businessVisible = false; |
| | | |
| | | }, |
| | | |
| | | // 业务类型清空 |