From e062cddb9b1bd6976bf5730274828bcef57e08e7 Mon Sep 17 00:00:00 2001
From: ludc <pUXmgxCf6A>
Date: 星期五, 26 五月 2023 10:27:19 +0800
Subject: [PATCH] 集团属性映射配置接口功能添加
---
Source/UBCS-WEB/src/views/modeling/original.vue | 379 +++++++++++++++++++++++++++++++++++++----------------
1 files changed, 261 insertions(+), 118 deletions(-)
diff --git a/Source/UBCS-WEB/src/views/modeling/original.vue b/Source/UBCS-WEB/src/views/modeling/original.vue
index 6e408a7..fe46d55 100644
--- a/Source/UBCS-WEB/src/views/modeling/original.vue
+++ b/Source/UBCS-WEB/src/views/modeling/original.vue
@@ -1,44 +1,107 @@
<template>
- <basic-container>
- <avue-crud v-model="form" :option="option" :data="data" ref="crud"
- @on-load="onLoad"
- @row-save="rowSave"
- @row-update="rowUpdate"
- :before-open="beforeOpen"
- @row-del="rowDel"
- :page.sync="page"
- @refresh-change="refreshChange"
- >
- <template slot-scope="{row,index,type}" slot="selInputForm">
- <div style="margin-left: 75px">
- <el-input v-model="form.text" :size="size"
- style="width: 210px" :readonly="true"></el-input>
- <el-button type="primary" style="margin-left: 10px" @click="addHandle">閫夋嫨</el-button>
- <el-button type="info">鍙栨秷</el-button>
- </div>
- </template>
- </avue-crud>
- <el-dialog :visible.sync="packageBox"
- append-to-body
- title="鏌ョ湅涓氬姟绫诲瀷"
- width="1000px">
- <original-range @rowchange="rowchange"></original-range>
- <span slot="footer" class="dialog-footer">
+ <el-container>
+ <el-main>
+ <basic-container>
+ <avue-crud v-model="form" :option="option" :data="data" ref="crud" @on-load="onLoad" @row-save="rowSave"
+ @row-update="rowUpdate" :before-open="beforeOpen" @row-del="rowDel" :page.sync="page"
+ @refresh-change="refreshChange" @row-click="rowClick"
+ @selection-change="selectChange">
+ <template slot-scope="{row,index,type}" slot="selInputForm">
+ <div style="margin-left: 75px">
+ <el-input v-model="form.text" :size="size" style="width: 210px" :readonly="true" @focus="selectBtmType" :disabled="referType.disable"></el-input>
+ </div>
+ </template>
+ <template slot="radio"
+ slot-scope="{row}">
+ <el-radio v-model="selectRow"
+ :label="row.$index">
+ </el-radio>
+ </template>
+ <template slot="menuLeft">
+ <el-button size="small"
+ plain
+ type="primary"
+ icon="el-icon-zoom-in"
+ @click="applyRangeOpen">鏌ョ湅浣跨敤鑼冨洿
+ </el-button>
+ </template>
+ </avue-crud>
+ <el-dialog :visible.sync="applyRange.display" append-to-body :title="applyRange.title" width="600px"
+ @close="applyRangeClose">
+ <avue-crud v-model="applyRange.model" :option="applyRange.option" :data="applyRange.data" class="applyRangeTable"
+ ></avue-crud>
+ </el-dialog>
+ <el-dialog :visible.sync="referType.display" append-to-body :title="referType.title" width="1000px">
+ <original-range @rowchange="rowchange"></original-range>
+ <span slot="footer" class="dialog-footer">
<el-button @click="dialoghandelfalse">鍙� 娑�</el-button>
<el-button type="primary" @click="dialoghandeltrue">纭� 瀹�</el-button>
- </span>
- </el-dialog>
- <el-dialog :visible.sync="packageLinkBox"
- append-to-body
- title="鏌ョ湅閾炬帴绫诲瀷"
- width="1000px">
- <original-link @rowLinkchange="rowLinkchange"></original-link>
- <span slot="footer" class="dialog-footer">
+ </span>
+ </el-dialog>
+ <!-- <el-dialog :visible.sync="packageLinkBox" append-to-body title="鏌ョ湅閾炬帴绫诲瀷" width="1000px">
+ <original-link @rowLinkchange="rowLinkchange"></original-link>
+ <span slot="footer" class="dialog-footer">
<el-button @click="Linkdialoghandelfalse">鍙� 娑�</el-button>
<el-button type="primary" @click="Linkdialoghandeltrue">纭� 瀹�</el-button>
- </span>
- </el-dialog>
- </basic-container>
+ </span>
+ </el-dialog> -->
+ </basic-container>
+ </el-main>
+ <el-aside>
+ <basic-container class="itemForm">
+ <el-tabs v-model="activeName" @tab-click="handleClick">
+ <el-tab-pane label="灞炴�ч」" name="attrTab">
+ <el-form ref="form" :model="itemData" label-width="80px" style="height: 656px;">
+ <el-form-item label="灞炴�х紪鐮�">
+ <el-input v-model="itemData.id" :disabled="true"></el-input>
+ </el-form-item>
+ <el-form-item label="灞炴�у悕绉�">
+ <el-input v-model="itemData.name" :disabled="true"></el-input>
+ </el-form-item>
+ <el-form-item label="灞炴�х被鍨�">
+ <el-input v-model="itemData.typeValue" :disabled="true"></el-input>
+ </el-form-item>
+ <el-form-item label="鏍囩">
+ <el-input v-model="itemData.hashtag" :disabled="true"></el-input>
+ </el-form-item>
+ <el-form-item label="榛樿鍊�">
+ <el-input v-model="itemData.defaultValue" :disabled="true"></el-input>
+ </el-form-item>
+ <el-form-item label="鍏佽涓虹┖">
+ <el-switch v-model="itemData.nullable" :disabled="true"></el-switch>
+ </el-form-item>
+ <el-form-item label="闀垮害">
+ <el-input v-model="itemData.maxLength" :disabled="true"></el-input>
+ </el-form-item>
+ <el-form-item label="鎻忚堪">
+ <el-input v-model="itemData.description" :disabled="true"></el-input>
+ </el-form-item>
+ </el-form>
+ </el-tab-pane>
+ <el-tab-pane label="鍙傜収" name="valueTab">
+ <el-form ref="form" :model="itemData" label-width="80px" style="height: 656px;">
+ <el-form-item label="鍙傜収绫诲瀷">
+ <el-input v-model="itemData.referTypeValue" :disabled="true"></el-input>
+ </el-form-item>
+ <el-form-item label="鍙傜収鍚嶇О">
+ <el-input v-model="itemData.referToName" :disabled="true"></el-input>
+ </el-form-item>
+ </el-form>
+ </el-tab-pane>
+ <el-tab-pane label="鏋氫妇" name="enumTab">
+ <el-form ref="form" :model="itemData" label-width="80px" style="height: 656px;">
+ <el-form-item label="浣跨敤鏋氫妇">
+ <el-switch v-model="itemData.usingDict" :disabled="true"></el-switch>
+ </el-form-item>
+ <el-form-item label="鏋氫妇绫诲瀷">
+ <el-input v-model="form.dictCode" :disabled="true"></el-input>
+ </el-form-item>
+ </el-form>
+ </el-tab-pane>
+ </el-tabs>
+ </basic-container>
+ </el-aside>
+ </el-container>
</template>
<script>
@@ -46,36 +109,40 @@
getList,
remove,
add,
- update, getPage
+ update, getPage, getApplyRange
} from "@/api/omd/OmdAttribute";
-import {
- getDictionary
-} from "@/api/omd/dictbiz";
+import { getDictionary } from "@/api/omd/enum";
export default {
- name: "original.vue",
+ name: "original",
data() {
return {
- datas:[],
- formAtrr:{},
+ datas: [],
+ itemData: {},
+ activeName: 'attrTab',
+ formAtrr: {},
rouname: "",
- // 涓氬姟绫诲瀷瀵硅瘽妗�
- packageBox: false,
- //閾炬帴绫诲瀷瀵硅瘽妗�
- packageLinkBox: false,
+ referType: {
+ code: 'referType',
+ key: '',
+ value: '',
+ display: false,
+ title: '',
+ disable: true
+ },
//鍊煎煙涓嬫媺妗嗘暟鎹�
Typelist: [],
//鐗堟湰鏁版嵁
banList: [],
// 灞炴�х被鍨嬩笅鎷夋鏁版嵁
- typeSelectList : [
+ typeSelectList: [
{
label: "鍝堝搱鍝�",
- value:0
+ value: 0
},],
// 鏄惁涓虹┖
- nullable : [],
+ nullable: [],
form: {
text: ""
},
@@ -87,25 +154,34 @@
currentPage: 1,
total: 100
},
+ selectRow: '',
data: [
],
option: {
- selection: true,
+ height: "550px",
headerAlign: 'center',
border: true,
index: true,
rowKey: 'id',
tabs: true,
- column: [
+ highlightCurrentRow: true,
+ column: [{
+ label: '閫夋嫨',
+ prop: 'radio',
+ width: 60,
+ hide: false,
+ display: false
+ },
{
label: '灞炴�х紪鍙�',
- prop: 'key',
+ prop: 'id',
align: 'left',
- display: false
+ display: false,
+ width: 200
}, {
label: '灞炴�у悕绉�',
- prop: 'label',
+ prop: 'name',
align: 'left',
display: false
},
@@ -119,7 +195,7 @@
label: '鏄惁浣跨敤鏋氫妇',
prop: 'usingDict',
type: 'switch',
- // hide: true,
+ hide: true,
labelWidth: 132,
display: false,
dicData: [{
@@ -149,12 +225,12 @@
hide: true,
labelWidth: 132,
dicData: [{
- label: '鍚�',
- value: 1
- }, {
- label: '鏄�',
- value: 0
- }]
+ label: '鍚�',
+ value: 1
+ }, {
+ label: '鏄�',
+ value: 0
+ }]
},
{
label: "闀垮害",
@@ -175,20 +251,20 @@
prop: "index",
column: [
{
- label: '灞炴�х紪鐮�',
- prop: 'key',
+ label: '灞炴�х紪鍙�',
+ prop: 'id',
align: 'left',
},
{
label: '灞炴�у悕绉�',
- prop: 'label',
+ prop: 'name',
align: 'left',
},
{
label: '鏍囩',
prop: 'hashtag',
hide: true
- },{
+ }, {
label: '灞炴�х被鍨嬪瓧鍏哥爜',
prop: 'typeCode',
display: false,
@@ -222,7 +298,13 @@
type: 'switch',
hide: true,
labelWidth: 132,
- dicData: this.nullable
+ dicData: [{
+ label: '鍚�',
+ value: 1
+ }, {
+ label: '鏄�',
+ value: 0
+ }]
},
{
label: "闀垮害",
@@ -237,25 +319,31 @@
]
},
{
- label: '鍊煎煙',
+ label: '鍙傜収',
column: [
{
- placeholder: "璇烽�夋嫨鍊煎煙",
+ label: '鍙傜収绫诲埆',
+ prop: 'referTypeCode',
+ display: false,
+ hide: true
+ },{
span: 12,
- label: '鍊煎煙',
- prop: 'range',
- value: 0,
+ label: '鍙傜収绫诲埆',
+ prop: 'referTypeKey',
type: "select",
change: this.selectChange,
- dicData: [
+ dicUrl: '/api/ubcs-omd/dict-biz/dictionary?code=referType',
+ dicType: 'String',
+ props: {
+ label: 'dictValue',
+ value: 'dictKey'
+ },
+ rules: [
{
- label: "涓氬姟绫诲瀷",
- value: 0
- },
- {
- label: "閾炬帴绫诲瀷",
- value: 1
- },
+ required: true,
+ message: "璇烽�夋嫨鍙傜収绫诲埆",
+ trigger: "click"
+ }
]
},
{
@@ -265,24 +353,24 @@
display: true,
formslot: true,
},
- {
- label: "閫夋嫨鐗堟湰",
- prop: "banben",
- type: 'select',
- value: 0,
- change: this.selchange,
- display: true,
- dicData: [
- {
- label: '褰撳墠鐗堟湰娆�',
- value: 0
- },
- {
- label: '鏈�鏂扮増鏈',
- value: 1
- }
- ]
- },
+ // {
+ // label: "閫夋嫨鐗堟湰",
+ // prop: "banben",
+ // type: 'select',
+ // value: 0,
+ // change: this.selchange,
+ // display: true,
+ // dicData: [
+ // {
+ // label: '褰撳墠鐗堟湰娆�',
+ // value: 0
+ // },
+ // {
+ // label: '鏈�鏂扮増鏈',
+ // value: 1
+ // }
+ // ]
+ // },
{
//榛樿琛ㄦ牸鎻掓Ы
prop: "default",
@@ -347,11 +435,43 @@
}
]
},
+ applyRange: {
+ model: "",
+ title: "搴旂敤鐨勪笟鍔$被鍨�",
+ option: {
+ height: 360,
+ addBtn: false,
+ refreshBtn: false,
+ columnBtn: false,
+ menu: false,
+ border: true,
+ reserveSelection: true,
+ searchMenuSpan:8,
+ searchShowBtn: false,
+ highlightCurrentRow: true,
+ column: [
+ {
+ label: '涓氬姟绫诲瀷缂栧彿',
+ prop: 'id',
+ align: 'left',
+ },
+ {
+ label: '涓氬姟绫诲瀷鍚嶇О',
+ prop: 'name',
+ align: 'left',
+ },
+ ]
+ },
+ data: [],
+ display: false,
+ }
}
},
created() {
+ const column =this.findObject(this.option.group,"referTypeKey")
+ console.log(column);
},
methods: {
rowLinkchange(row) {
@@ -390,34 +510,26 @@
this.packageLinkBox = false
},
selectChange(val) {
- this.Typelist = val
-
- if (val.value == 0) {
- this.option.group[1].column[2].display = false
- } else if (val.value == 1) {
- this.option.group[1].column[2].display = true
- } else if (val.column.value == 0) {
- this.option.group[1].column[2].display = false
+ this.referType.key = val.value
+ if (val.value == 'businessType'){
+ this.referType.value = '涓氬姟绫诲瀷'
+ }
+ if (val.value == 'linkType'){
+ this.referType.value = '閾炬帴绫诲瀷'
+ }
+ if(val.value){
+ this.referType.disable = false
}
},
selchange(val) {
this.banList = val
+ console.log(val);
},
refreshChange() {
this.onLoad(this.pageParent, this.query);
},
beforeOpen(done, type) {
- if (['view', 'edit'].includes(type)) {
- // 鏌ョ湅鍜岀紪杈戦�昏緫
- console.log("缂栬緫")
- } else {
- //鏂板閫昏緫
- console.log(this.Typelist)
- console.log(this.banList)
-
- console.log("鏂板")
- console.log(this.typeSelectList)
- }
+
done();
},
@@ -471,12 +583,43 @@
this.data = data.records;
this.loading = false;
this.data = res.data.data.records
+ this.itemData = this.data[0];
})
},
+ rowClick(row) {
+ this.itemData = row;
+ this.selectRow = row.$index;
+
+ }
+ ,selectBtmType(){
+ this.referType.display = true;
+ this.referType.title = "璇烽�夋嫨" + this.referType.value
+ },
+ applyRangeOpen(){
+ if (!this.selectRow){
+ this.$message({
+ type:"warning",
+ message: "璇峰厛閫夋嫨灞炴��"
+ })
+ }
+ var oid = this.data[this.selectRow].oid;
+ console.log(oid);
+ getApplyRange(oid).then(res => {
+ this.applyRange.data = res.data.data;
+ })
+ console.log("success");
+ this.applyRange.display = true;
+ },
+ applyRangeClose(){
+ this.applyRange.data = [];
+ this.applyRange.display = false;
+ }
},
}
</script>
<style lang="scss">
-
+.applyRangeTable > .el-card:nth-of-type(2) > .el-card__body > .avue-crud__menu{
+ display: none !important;
+}
</style>
--
Gitblit v1.9.3