From d44134d06fc57865bc8995972e9035dbb90fd8b9 Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期二, 18 七月 2023 15:19:25 +0800
Subject: [PATCH] 7-18整合代码
---
Source/UBCS-WEB/src/components/Tree/attrCrud.vue | 707 ++++++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 530 insertions(+), 177 deletions(-)
diff --git a/Source/UBCS-WEB/src/components/Tree/attrCrud.vue b/Source/UBCS-WEB/src/components/Tree/attrCrud.vue
index 68cdd6c..cc66270 100644
--- a/Source/UBCS-WEB/src/components/Tree/attrCrud.vue
+++ b/Source/UBCS-WEB/src/components/Tree/attrCrud.vue
@@ -1,43 +1,41 @@
<template>
-
- <!-- <avue-crud :data="ProData" :option="option" @sort-change="sortChange" @row-update="addUpdate"-->
- <!-- @cell-click="handleRowClick" @select="selectHandle" @row-del="CrudRowDel">-->
<div>
- <div style="display: flex;flex-wrap: wrap;" v-if="this.crudArray.length>=1">
+ <div style="display: flex;flex-wrap: wrap;" v-if="this.crudArrayFlag">
+
<!--鏂板-->
- <el-button v-if="attrEditVisible == false && attrFlagChiledren==false" size="small" type="primary"
- @click="busineHandle">锛� 娣诲姞 {{ msg }}
- </el-button>
+ <el-button v-if="attrEditVisible == false && attrFlagChiledren==false" size="small" type="primary" icon="el-icon-plus" @click="busineHandle">娣诲姞 {{ msg }}</el-button>
<!-- 鍏ㄥ睆缂栬緫-->
- <el-button v-if=" attrEditVisible == false && attrFlagChiledren==false" size="small" @click="fullscreenHandle">
- 鍏ㄥ睆缂栬緫
- </el-button>
- <!-- 缁勫悎瑙勫垯-->
- <el-button size="small" @click="isShowHandler">缁勫悎瑙勫垯</el-button>
+ <el-button v-if=" attrEditVisible == false && attrFlagChiledren==false" size="small" @click="fullscreenHandle" icon="el-icon-full-screen">鍏ㄥ睆缂栬緫</el-button>
<!-- 楠岃瘉瑙勫垯-->
- <el-button icon="el-icon-info" size="small" @click="rulesVisible=true">楠岃瘉瑙勫垯</el-button>
+ <el-button icon="el-icon-info" size="small" @click="ruleAddHandler">楠岃瘉瑙勫垯</el-button>
<!-- 灞炴�у垎缁�-->
<el-button icon="el-icon-menu" size="small" @click="attrVisibleHandle">灞炴�у垎缁�</el-button>
+
+
<!-- 鍒嗙被娉ㄥ叆-->
<el-button icon="el-icon-magic-stick" size="small" @click="injectBtn">鍒嗙被娉ㄥ叆</el-button>
+ <!-- 缁勫悎瑙勫垯-->
+ <el-button size="small" @click="isShowHandler">缁勫悎瑙勫垯</el-button>
<!-- 鏋氫妇娉ㄥ叆-->
<el-button size="small" @click="enmuVisHandle">鏋氫妇娉ㄥ叆</el-button>
<!-- 绾ц仈灞炴��-->
<el-button size="small" @click="CascadeHandle">绾ц仈灞炴��</el-button>
<!-- 棰勮鎺掑簭-->
- <el-button size="small">棰勮鎺掑簭</el-button>
+ <el-button size="small" @click="orderHandle" icon="el-icon-arrow-down">棰勮鎺掑簭</el-button>
+
+
<!-- 淇濆瓨-->
- <el-button size="small" @click="addsHandler">淇濆瓨</el-button>
+ <el-button size="small" @click="addsHandler" icon="el-icon-check">淇濆瓨</el-button>
<!-- 鍒犻櫎-->
- <el-button size="small" @click="CrudRemove">鍒犻櫎</el-button>
+ <el-button size="small" @click="CrudRemove" icon="el-icon-delete">鍒犻櫎</el-button>
<!-- 閲嶇疆-->
- <el-button size="small" @click="reset">閲嶇疆</el-button>
+ <el-button size="small" @click="reset" icon="el-icon-refresh-right">閲嶇疆</el-button>
<!-- 鍚屾鍒板叾浠栨ā鏉�-->
- <el-button size="small"@click="syncHandle">鍚屾鍒板叾浠栨ā鏉�</el-button>
+ <el-button size="small"@click="syncHandle" icon="el-icon-share">鍚屾鍒板叾浠栨ā鏉�</el-button>
+
<!-- 缂栫爜鐢宠棰勮-->
<el-button size="small" @click="applicationHandle" style="">缂栫爜鐢宠棰勮</el-button>
<!-- 楠岃瘉瑙勫垯-->
-
</div>
<!-- 寮圭獥-->
<div>
@@ -66,7 +64,7 @@
</div>
</el-dialog>
<!-- 鏋氫妇娉ㄥ叆-->
- <el-dialog :visible.sync="enumVisible" append-to-body title="鏋氫妇娉ㄥ叆">
+ <el-dialog :visible.sync="enumVisible" append-to-body title="鏋氫妇娉ㄥ叆" :before-close="this.enumBeforeClose">
<!-- 娓叉煋琛ㄦ牸鍙婃寜閽� -->
<!-- 娓叉煋琛ㄦ牸鍙婃寜閽� -->
<div>
@@ -96,7 +94,7 @@
</el-table-column>
<el-table-column fixed="right" label="鎿嶄綔" width="120">
<template slot-scope="scope">
- <el-button size="small" type="text" @click.native.prevent="enumDeleteRow(scope.$index, tableData)">
+ <el-button size="small" type="text" plain @click="enumDeleteRow">
绉婚櫎
</el-button>
</template>
@@ -105,7 +103,7 @@
<template>
<div style="display: flex;justify-content: right;margin-top: 15px">
<el-button size="small" type="primary" @click="enumAddHandle">淇濆瓨</el-button>
- <el-button size="small" @click="enumVisible=false">鍙栨秷</el-button>
+ <el-button size="small" @click="enumCancell">鍙栨秷</el-button>
</div>
</template>
</div>
@@ -203,62 +201,86 @@
</el-dialog>
<!-- 鍏ㄥ睆缂栬緫-->
<el-dialog :visible.sync="attrEditVisible" append-to-body fullscreen="true">
- <attrCrud :ProData="this.ProData" :attrFlagChiledren="this.attrFlag"></attrCrud>
+ <attrCrud :ProData="this.ProData" :attrFlagChiledren="this.attrFlag" :crudArrayFlag="this.crudArrayFlag"></attrCrud>
</el-dialog>
<!-- 缁勫悎瑙勫垯-->
<formula-editor :systemVariableTableData="systemVariableTableData"
:thisSceneTableData="thisSceneTableData"
:visible.sync="isShowformulaEdit"
@updateFormulaContent="updataFormlaContent"
+ :componentRuleText="componentRuleText"
></formula-editor>
<!-- 鏂板 -->
<el-dialog :visible.sync="addVisible" append-to-body title="浠庝笟鍔$被鍨嬩腑閫夋嫨灞炴��">
- <avue-crud :data="businessData" :option="businessOption" @select="businessSelect">
+ <avue-crud ref="AddOriginPlace" :data="businessData" :option="businessOption" @selection-change="businessSelect">
<template slot="menuLeft">
<div style="display: flex;">
- <el-select>
- <el-option>灞炴�ц嫳鏂囧悕绉�</el-option>
- <el-option>灞炴�т腑鏂囧悕绉�</el-option>
+ <el-select v-model="SelectValue" placeholder="璇烽�夋嫨" style="width: 150px !important;">
+ <el-option
+ v-for="item in SelectOption"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ style="width: 150px">
+ </el-option>
</el-select>
- <el-input style="width: 300px;margin-left: 20px"></el-input>
- <el-button size="small" style="margin-left: 10px">鏌ヨ</el-button>
+ <el-input style="width: 400px;margin-left: 20px" v-model="SelectFInd"></el-input>
+ <el-button size="small" style="margin-left: 10px" @click="AddFindHandler">鏌ヨ</el-button>
</div>
-
</template>
</avue-crud>
<div style="display: flex;justify-content: flex-end;margin-top: 15px">
<el-button size="small" type="primary" @click="busineAddHandle">淇濆瓨</el-button>
- <el-button size="small" type="primary">鍙栨秷</el-button>
+ <el-button size="small" type="primary" @click="addVisible=false">鍙栨秷</el-button>
</div>
</el-dialog>
+ <!-- 鍙傜収閰嶇疆-->
+ <refer-config-form-dialog
+ ref="referConfigFormDialog"
+ @echoReferConfig="echoReferConfig"
+ ></refer-config-form-dialog>
</div>
<el-table :data="ProData"
style="width: 100%"
+ height="750"
@cell-click="handleCellClicks"
@select="selectHandle"
- v-if="this.crudArray.length>=1"
-
+ @selection-change="selectionChange"
+ v-if="this.crudArrayFlag"
+ ref="referAttrCrud"
>
<el-table-column
type="selection"
- width="55">
+ width="55" fixed>
</el-table-column>
- <el-table-column fixed label="搴忓彿" type="index" width="55"></el-table-column>
- <el-table-column v-for="item in this.option.column" :key="item.id"
+ <!--<el-table-column fixed label="搴忓彿" type="index" width="55"></el-table-column>-->
+ <el-table-column v-for="(item,index) in this.option.column" :key="item.id"
:label="item.label"
:prop="item.prop"
:formatter="formAttr"
- :width="item.label.length >=4 ?'150':item.label.length==3 ?'120':'90'"
+ :width="item.width||(item.label.length >=4 ?'160':item.label.length==3 ?'130':'100')"
:show-overflow-tooltip="true"
+ :sortable="item.sortable"
+ :fixed="item.fixed"
align="center"
+ v-if="item.edit !='referName'"
>
<template slot-scope="{ row }">
- <el-input v-if="editingRows === row && editShows== item.prop" v-model="row[item.prop]"
+ <el-input v-if="editingRows === row && editShows== item.prop && item.prop != 'codeDateFormat' && (item.edit == 'text' ||item.edit == 'refer' )" v-model="row[item.prop]"
@blur="saveRows"></el-input>
+ <el-input-number size="small" controls-position="right" v-if="editingRows === row && editShows== item.prop && item.edit == 'number'" v-model="row[item.prop]"
+ @blur="saveRows" :style="{width:(item.width-10)+'px'}"></el-input-number>
+ <el-select v-model="row[item.prop]" filterable allow-create default-first-option slot="prepend" v-if="editingRows === row && editShows== item.prop && item.edit == 'select' " @blur="selectChangeHandler(item.editConfig,index)">
+ <el-option
+ v-for="optionItem in item.data"
+ :key="optionItem.dictValue"
+ :label="optionItem.dictValue"
+ :value="optionItem.dictValue">
+ </el-option>
+ </el-select>
<el-switch
- v-if="item.label === 'true' || item.label === 'false'"
- active-color="#13ce66"
- inactive-color="#ff4949">
+ v-if="item.edit === 'switch'" v-model="row[item.prop]" active-value="true"
+ inactive-value="false">
</el-switch>
<span v-else>{{ row[item.prop] }}</span>
</template>
@@ -266,27 +288,26 @@
<el-table-column
fixed="right"
label="鎿嶄綔"
- width="120">
+ width="70">
<template slot-scope="scope">
<el-button
size="small"
type="text"
- @click.native.prevent="CrudRowDel(scope.row)">
+ @click.native.prevent="CrudRowDel(scope.$index)">
绉婚櫎
</el-button>
</template>
</el-table-column>
</el-table>
</div>
- <!-- </avue-crud>-->
</template>
<script>
-import {AttrByBtm, gridCodeClassifyTemplateAttr, batchAddSave, copyto} from '@/api/template/templateAttr'
+import {AttrByBtm, gridCodeClassifyTemplateAttr, batchAddSave, copyto,listByFlag} from '@/api/template/templateAttr'
+import {getList} from "@/api/refer/table";
export default {
name: "attrCrud .vue",
- // props: ['ProData','crudOid','crudArray','Formlist','codeClassifyOid'],
props: {
ProData: {
type: Array,
@@ -309,27 +330,65 @@
type: Boolean,
default: false
},
-
+ crudArrayFlag:{
+ type: Boolean,
+ default: false
+ }
+ },
+ watch:{
+ crudArray:{
+ handler(newval,oldval){
+ if(newval != undefined){
+ if(newval.length>=1){
+ this.crudArrayFlag=true
+ }else{
+ this.crudArrayFlag=false
+ }
+ }
+ },
+ deep:true,
+ immediate:true
+ }
},
data() {
return {
+ screenWidth: document.documentElement.clientWidth, // 灞忓箷瀹藉害
+ //褰撳墠鍗曞厓鏍�
+ CurrentCell:'',
+ // 鏂板
+ SelectValue:"",
+ SelectFInd:"",
+ SelectOption:[
+ {
+ value: 'name',
+ label: '灞炴�т腑鏂囧悕绉�'
+ },
+ {
+ value: 'id',
+ label: '灞炴�ц嫳鏂囧悕绉�'
+ }
+ ],
+ //鍙傜収
+ referVisible:false,
+ crudArrayFlag:false,
editingRows: null,
editShows:"",
attrFlag: false,
+ referObject:{},
//缂栫爜鐢宠棰勮option
applicationoption: {
column: []
},
// 缂栫爜鐢宠棰勮data
applicationData: [],
- //涓氬姟绫诲瀷鍗曢�夋暟缁�
+ //涓氬姟绫诲瀷閫夋嫨鏁扮粍
busineSelectList: [],
//涓氬姟绫诲瀷娣诲姞鏁版嵁
busineAddList: {},
//琛ㄦ牸鍗曢�夋暟缁�
- CrudSelect: [],
+ attrSelectList: [],
//琛ㄦ牸oid
- CrudOid: "",
+ attrOid: "",
//鍦烘櫙鍙橀噺
thisSceneTableData: [
{
@@ -421,6 +480,8 @@
isShowformulaEdit: false,
// 绾ц仈鍗曢��
selectRow: '',
+ //绾ц仈鍗曢�夋暟缁�
+ selectRowArr:[],
// 绾ц仈data
CascadeData: [],
// 绾ц仈option
@@ -724,7 +785,8 @@
// 灞炴�ч獙璇佽緭鍏ユ
RulesForm: {
expressionText: "",
- TestContent: ""
+ TestContent: "",
+ ruleRowBds:""
},
//灞炴�ч獙璇佽鍒欓厤缃�
rulesOption: {
@@ -887,11 +949,27 @@
},
{
label: "鏁版嵁绫诲瀷",
- prop: "attrDataType"
+ prop: "attrDataType",
+ formatter:function(row,column){
+ let vciFieldTypeMap = {
+ VTBoolean: "甯冨皵鍨�",
+ VTClob: "闀挎枃鏈�",
+ VTDate: "鏃ユ湡",
+ VTDateTime: "鏃ユ湡鏃堕棿",
+ VTTime: "鏃堕棿",
+ VTLong: "闀挎暣鍨�",
+ VTDouble: "閲戦/鍙岀簿搴�",
+ VTInteger: "鏁村舰",
+ VTFilePath: "鏂囦欢",
+ VTString: "瀛楃涓�"
+ }
+ return vciFieldTypeMap[row.attrDataType];
+ }
},
{
label: "鍙┖",
- prop: "nullableFlag"
+ prop: "nullableFlag",
+ formatter:function(row,column){return row.nullableFlag=='true' || row.nullableFlag=='1'?'鏄�':'鍚�'}
},
{
label: "榛樿鍊�",
@@ -911,11 +989,25 @@
},
{
label: "鍙傜収",
- prop: "referFlag"
+ prop: "referFlag",
+ formatter: function (d) {
+ if (!d.referFlag) {
+ return '';
+ } else {
+ return d.referBtmTypeId
+ }
+ }
},
{
label: "鏋氫妇",
- prop: "enumFlag"
+ prop: "enumFlag",
+ formatter: function (d) {
+ if (!d.enumFlag) {
+ return '';
+ } else {
+ return d.enumId
+ }
+ }
},
]
},
@@ -927,7 +1019,7 @@
rowCellList: [],
List: [],
option: {
- index: true,
+ index: false,
border: true,
editBtn: false,
selection: true,
@@ -940,8 +1032,14 @@
prop: 'name',
order: 'descending'
},
- column: [
- {
+ column: [{
+ prop: 'orderNum',
+ label: '鎺掑簭鍙�',
+ sortable: true,
+ edit: 'number',
+ width: 90,
+ fixed: true
+ }, {
label: "灞炴�ц嫳鏂囩紪鍙�",
prop: "id",
fixed: true,
@@ -955,7 +1053,8 @@
prop: "name",
fixed: true,
cell: false,
- width: 125,
+ width: 145,
+ edit: 'text',
sortable: true
},
{
@@ -963,6 +1062,7 @@
prop: "attributeGroup",
cell: false,
sortable: true,
+ edit: 'text',
width: 125,
},
{
@@ -977,78 +1077,104 @@
cell: false,
sortable: true,
width: 105,
+ edit: 'number'
},
{
label: "鍏抽敭灞炴��",
prop: "keyAttrFlag",
cell: false,
- type: "switch",
+ edit: "switch"
},
{
label: "鏌ヨ灞炴��",
prop: "queryAttrFlag",
cell: false,
+ edit: "switch"
},
{
label: "楂樼骇鏌ヨ灞炴��",
prop: "seniorQueryAttrFlag",
- width: 95,
+ width: 110,
cell: false,
+ edit: "switch"
},
{
- label: "鐩镐技鏌ヨ灞炴��",
+ label: "鐩镐技鏌ラ噸灞炴��",
prop: "sameRepeatAttrFlag",
- width: 95,
+ width: 110,
cell: false,
+ edit: "switch"
},
{
label: "蹇呰緭",
prop: "requireFlag",
cell: false,
+ edit: "switch"
},
{
label: "琛ㄥ崟鏄剧ず",
prop: "formDisplayFlag",
cell: false,
+ edit: "switch"
},
{
label: "鍒楄〃鏄剧ず",
prop: "tableDisplayFlag",
cell: false,
+ edit: "switch"
},
{
label: "鍙",
prop: "readonlyFlag",
cell: false,
+ edit: "switch"
},
{
label: "鍒楄〃鎺掑簭",
prop: "sortAttrFlag",
cell: false,
+ edit: "switch"
},
-
{
label: "澶氳鏂囨湰",
prop: "textareaFlag",
cell: false,
+ edit: "switch"
},
{
label: "榛樿鍊�",
prop: "defaultValue",
sortable: true,
cell: false,
+ edit: 'text',
width: 95,
},
{
label: "鍓嶇紑",
prop: "prefixValue",
sortable: true,
+ edit: 'select',
+ width: 110,
+ editConfig: {
+ extraParams: {
+ code: 'codeclstempattr',
+ dictKey: 'prefix'
+ }
+ },
cell: false,
},
{
label: "鍚庣紑",
prop: "suffixValue",
sortable: true,
+ edit: 'select',
+ width: 110,
+ editConfig: {
+ extraParams: {
+ code: 'codeclstempattr',
+ dictKey: 'suffix'
+ }
+ },
cell: false,
},
{
@@ -1056,6 +1182,7 @@
prop: "componentRule",
sortable: true,
cell: false,
+ edit: 'refer',
width: 105,
},
{
@@ -1063,91 +1190,117 @@
prop: "verifyRule",
sortable: true,
cell: false,
+ edit: 'refer',
width: 105,
},
{
label: "鏃堕棿鏍煎紡",
prop: "codeDateFormat",
sortable: true,
- width: 105,
+ width: 135,
+ edit: 'select',
+ editConfig: {
+ extraParams: {
+ code: 'codeclstempattr',
+ dictKey: 'dateFormates'
+ }
+ },
cell: false,
+ },
+ {
+ label: "鍒嗙被娉ㄥ叆",
+ prop: "classifyInvokeLevelName",
+ cell: false,
+ edit: 'refer'
},
{
label: "鍒嗙被娉ㄥ叆",
prop: "classifyInvokeLevel",
cell: false,
+ edit: 'referName',
},
{
label: "鏋氫妇娉ㄥ叆",
prop: "enumString",
cell: false,
+ edit: 'refer'
},
{
label: "绾ц仈灞炴��",
prop: "parentCode",
cell: false,
+ edit: 'refer'
},
{
label: "鍙傜収閰嶇疆",
prop: "referConfig",
cell: false,
+ edit: 'refer'
},
{
label: "绾ц仈鏌ヨ灞炴��",
prop: "parentQueryAttr",
width: 105,
cell: false,
+ edit: 'text'
},
{
label: "閫夋嫨搴撴爣璇�",
prop: "libraryIdentification",
width: 105,
cell: false,
+ edit: 'text'
},
{
label: "濉啓鎻愮ず",
prop: "explain",
cell: false,
+ edit: 'text'
},
{
label: "琛ㄥ崟鏄剧ず鏍峰紡",
prop: "formDisplayStyle",
width: 105,
cell: false,
+ edit: 'text'
},
{
label: "琛ㄦ牸鏄剧ず鏍峰紡",
prop: "tableDisplayStyle",
width: 105,
cell: false,
+ edit: 'text'
},
{
label: "琛ㄥ崟瓒呴摼鎺�",
prop: "formHref",
width: 95,
cell: false,
+ edit: 'text'
},
{
label: "琛ㄦ牸瓒呴摼鎺�",
prop: "tableHref",
width: 95,
cell: false,
+ edit: 'text'
},
{
label: "琛ㄦ牸鏄剧ずjs",
prop: "tableDisplayJs",
width: 95,
cell: false,
+ edit: 'text'
},
{
label: "闀垮害",
prop: "controlLength",
- cell: false,
+ cell: false
},
{
label: "灏忔暟绮惧害",
prop: "precisionLength",
- cell: false,
+ cell: false
},
{
label: "鍙栧�艰寖鍥�",
@@ -1155,48 +1308,123 @@
sortable: true,
cell: false,
width: 105,
+ edit: 'text'
},
],
List: []
- }
+ },
+ vciFieldTypeMap : {
+ VTBoolean: "甯冨皵鍨�",
+ VTClob: "闀挎枃鏈�",
+ VTDate: "鏃ユ湡",
+ VTDateTime: "鏃ユ湡鏃堕棿",
+ VTTime: "鏃堕棿",
+ VTLong: "闀挎暣鍨�",
+ VTDouble: "閲戦/鍙岀簿搴�",
+ VTInteger: "鏁村舰",
+ VTFilePath: "鏂囦欢",
+ VTString: "瀛楃涓�"
+ },
+ //鏃堕棿鏍煎紡涓嬫媺妗�
+ codeDataFlag:false,
+ // 缁勫悎瑙勫崟鍏冩牸缂栬緫鍥炲~
+ componentRuleText:""
+ }
+ },
+ computed:{
+ attrOids() {
+ let oids = [];
+ this.attrSelectList.forEach(ele => {
+ oids.push(ele.oid);
+ });
+ return oids.join(",");
+ },
+ busineOids() {
+ let oids = [];
+ this.busineSelectList.forEach(ele => {
+ oids.push(ele.oid);
+ });
+ return oids.join(",");
}
},
mounted() {
+ window.addEventListener(
+ 'resize',
+ () => {
+ if(Math.abs(this.screenWidth - document.body.clientWidth) > 20) {
+ this.$nextTick(() => {
+ this.$refs.AddOriginPlace.refreshTable();
+ })
+ }
+ this.screenWidth = document.body.clientWidth;
+ }
+ )
},
created() {
-
+ this.option.column.forEach((item,index) => {
+ if (item.edit == 'select') {
+ this.selectChangeHandler(item.editConfig,index)
+ }
+ })
},
methods: {
formAttr(row, column) {
console.log(row,column)
- // if (column.property === "keyAttrFlag"
- // ||column.property === "queryAttrFlag"
- // ||column.property === "seniorQueryAttrFlag"
- // ||column.property === "sameRepeatAttrFlag"
- // ||column.property === "requireFlag"
- // ||column.property === "formDisplayFlag"
- // ||column.property === "tableDisplayFlag"
- // ||column.property === "sortAttrFlag") {
- // return row[column.property] =='true'? "鏄�" : "鍚�";
- // }
- // return row[column.property];
+ },
+ //鏂板鎼滅储
+ AddFindHandler(){
+ if(this.SelectValue == 'id'){
+ const masterParameter={
+ 'conditionMap[id]':this.SelectFInd
+ }
+ this.BuineAttrByBtm(masterParameter);
+ this.SelectValue=""
+ this.SelectFInd=""
+ }else if(this.SelectValue == 'name'){
+ const masterParameter={
+ 'conditionMap[name]':this.SelectFInd
+ }
+ this.BuineAttrByBtm(masterParameter)
+ this.SelectValue=""
+ this.SelectFInd=""
+ }
+ },
+ //鍙傜収閰嶇疆瀛愮粍浠�
+ echoReferConfig(val){
+ console.log('val--',val)
+ this.referObject=val
+ this.$set(this.CurrentCell,'referConfig',JSON.stringify(val))
+
+ },
+ //鍙緭鍙�変笅鎷�
+ selectChangeHandler(editConfig,index){
+ let that=this;
+ /*if(that.option.column[index].data && that.option.column[index].data.length>=0){
+ return;
+ }*/
+ listByFlag(editConfig.extraParams).then(res=>{
+ that.option.column[index].data=res.data.data;
+ })
},
//灞炴�у垎缁勬寜閽�
attrVisibleHandle() {
- this.formatBoolean()
- if (this.CrudSelect.length > 1) {
- this.$message.warning('鍙兘閫夋嫨涓�鏉℃ā鏉垮睘鎬�')
- } else if (this.CrudSelect < 1) {
- this.$message.warning('璇烽�夋嫨涓�鏉℃ā鏉垮睘鎬�')
- } else if (this.CrudSelect.length === 1) {
+ if (this.attrSelectList < 1) {
+ this.$message.warning('璇烽�夋嫨妯℃澘灞炴��')
+ } else {
this.attrVisible = true;
+ console.log(this.attrSelectList)
}
},
//灞炴�у垎缁勬彁浜�
attrHandle() {
- this.$set(this.attrRow, 'attributeGroup', this.attrModel)
- this.attrModel = ""
- this.attrVisible = false
+ console.log(this.attrSelectList)
+ // this.$set(this.attrRow, 'attributeGroup', this.attrModel)
+ // this.attrSelectList.attributeGroup=this.attrModel
+ this.attrSelectList.forEach(item=>{
+ item.attributeGroup=this.attrModel
+ })
+ this.attrModel = "";
+ this.attrVisible = false;
},
//灞炴�у垎缁勬竻绌�
attrRemove() {
@@ -1214,65 +1442,89 @@
},
//涓氬姟绫诲瀷淇濆瓨
busineAddHandle() {
- if (this.busineSelectList.length > 1) {
- this.$message.warning('璇烽�夋嫨涓�鏉′笟鍔$被鍨嬫暟鎹�')
- } else {
- this.$set(this.busineAddList, 'classifytemplateoid', this.crudOid)
- this.$set(this.busineAddList, 'oid', '')
- this.ProData.push(JSON.parse(JSON.stringify(this.busineAddList)))
- this.addVisible = false;
+ if (this.busineSelectList.length == 0) {
+ this.$message.warning('璇烽�夋嫨灞炴�ч泦');
+ return false;
}
+ let ordernum = this.ProData.length;
+ this.busineSelectList.forEach((citem) => {
+ let isCopy = false;
+ this.ProData.forEach((item) => {
+ if (citem.id == item.id) {
+ isCopy = true;
+ return false;
+ }
+ })
+ if (!isCopy) {
+ citem.oid = ''
+ this.busineAddList=Object.assign(citem, {
+ orderNum: ++ordernum,
+ attributedatatype: citem.attrDataType,
+ attributeDataTypeText: this.vciFieldTypeMap[citem.attrDataType],
+ controlLength: citem.attributeLength,
+ valueArea: citem.range,
+ referbtmid: citem.referBtmTypeId,
+ referbtmname: citem.referBtmTypeName,
+ referConfig: '',
+ enumid: citem.enumId,
+ precisionLength: (citem.precisionLength ? citem.precisionLength : '') + (citem.scaleLength ? '(' + citem.scaleLength + ')' : ''),
+ classifyTemplateOid: this.crudOid,
+ classifytemplateoid: this.crudOid,
+ formDisplayFlag: 'true',
+ tableDisplayFlag: 'true',
+ sortAttrFlag: 'false',
+ queryAttrFlag: 'true',
+ seniorQueryAttrFlag: 'true',
+ attrTableWidth: 120
+ })
+ this.ProData.push(JSON.parse(JSON.stringify(this.busineAddList)))
+ }
+ })
+ this.addVisible = false;
+
},
- //涓氬姟绫诲瀷鍗曢��
+ //涓氬姟绫诲瀷閫夋嫨
businessSelect(selection, row) {
this.busineSelectList = selection
- this.busineAddList = row
},
- // 浠庝笟鍔$被鍨嬩腑閫夋嫨鏁版嵁
+ // 浠庝笟鍔$被鍨嬩腑閫夋嫨鏁版嵁寮圭獥
busineHandle() {
- if (this.crudArray.length < 1) {
- this.$message.error('璇烽�夋嫨涓�鏉℃ā鏉�')
- } else {
- this.addVisible = true;
- AttrByBtm({'conditionMap[oid]': this.crudOid}).then(res => {
- this.businessData = res.data.data;
- })
- }
+ this.addVisible = true;
+ this.busineSelectList = []
+ this.busineAddList = [];
+ this.BuineAttrByBtm()
+ },
+ //涓氬姟绫诲瀷鏁版嵁
+ BuineAttrByBtm(masterParameter){
+ AttrByBtm({'conditionMap[oid]': this.crudOid,...masterParameter}).then(res => {
+ this.businessData = res.data.data;
+ })
},
// 绾ц仈灞炴�ф寜閽�
CascadeHandle() {
- if (this.CrudSelect.length > 1) {
+ if (this.attrSelectList.length > 1) {
this.$message.warning('鍙兘閫夋嫨涓�鏉℃ā鏉垮睘鎬�')
- } else if (this.CrudSelect.length < 1) {
+ } else if (this.attrSelectList.length < 1) {
this.$message.warning('璇烽�夋嫨涓�鏉℃ā鏉垮睘鎬�')
- } else if (this.CrudSelect.length === 1) {
+ } else if (this.attrSelectList.length === 1) {
this.CascadeVisible = true;
gridCodeClassifyTemplateAttr({
'conditionMap[classifyTemplateOid]': this.Formlist[0].oid,
- 'conditionMap[oid_notequal]': this.CrudOid
+ 'conditionMap[oid_notequal]': this.attrOid
}).then(res => {
this.CascadeData = res.data.data;
})
}
},
- //琛ㄦ牸鍗曢��
- selectHandle(selection, row) {
- this.CrudOid = row.oid;
- this.CrudSelect = selection;
- this.attrRow = row;
- console.log('123',row,selection)
- },
- //淇濆瓨
- addsHandler() {
- batchAddSave(JSON.parse(JSON.stringify(this.ProData).replace(/classifyTemplateOid/g,"classifytemplateoid"))).then(res => {
- this.$message.success('淇濆瓨鎴愬姛')
- })
- },
//绾ц仈淇濆瓨
CascadeAddHandle() {
let CascadeString = "";
- CascadeString = this.attrRow.id + (this.attrRow.name);
- this.$set(this.attrRow, 'parentCode', CascadeString)
+ CascadeString = this.selectRowArr.id + (this.selectRowArr.name);
+ if(this.CurrentCell){
+ this.$set(this.CurrentCell, 'parentCode', CascadeString)
+ }else {
+ this.$set(this.attrSelectList[0], 'parentCode', CascadeString)
+ }
this.CascadeVisible = false;
},
//绾ц仈灞炴�ф竻闄�
@@ -1281,16 +1533,69 @@
},
// 绾ц仈灞炴�ц鍗曢��
CascaderowClick(row) {
- this.selectRow = row.$index
+ this.selectRow = row.$index;
+ this.selectRowArr=row
},
+ // 鎺掑簭棰勮鎸夐挳
+ orderHandle(){
+ this.$refs.referAttrCrud.sort("orderNum");
+ },
+ //琛ㄦ牸鍗曢��
+ selectHandle(selection, row) {
+ this.attrOid = row.oid;
+ this.attrRow = row;
+ console.log(row)
+ },
+ //琛ㄦ牸閫夋嫨
+ selectionChange(list) {
+ this.attrSelectList = list;
+ console.log(list)
+ },
+ //淇濆瓨
+ addsHandler() {
+ batchAddSave(JSON.parse(JSON.stringify(this.ProData))).then(res => {
+ this.$message.success('淇濆瓨鎴愬姛')
+ })
+ },
+
//琛ㄦ牸琛岀紪杈�
handleCellClicks(row, column) {
- this.editingRows = row;
- this.editShows = column.property;
- this.rowOid = row.oid;
+ this.editingRows = row;
+ this.editShows = column.property;
+ this.rowOid = row.oid;
+ this.CurrentCell=row;
+ if(column.property == 'referConfig' ){
+ this.$refs.referConfigFormDialog.isShowReferConfigForm = true;
+ this.$refs.referConfigFormDialog.onloadAttrData();
+ }else if(column.property == 'classifyInvokeLevelName'){
+ this.injectVisible=true;
+ }else if(column.property == 'componentRule'){
+
+ if(this.CurrentCell){
+ this.CurrentCell.componentRule=this.componentRuleText;
+ }
+ this.isShowformulaEdit = true;
+ }else if(column.property == 'enumString'){
+ this.enumVisible=true;
+ }else if(column.property == 'parentCode'){
+ gridCodeClassifyTemplateAttr({
+ 'conditionMap[classifyTemplateOid]': this.Formlist[0].oid,
+ 'conditionMap[oid_notequal]': this.CurrentCell.oid
+ }).then(res => {
+ console.log(res)
+ this.CascadeData = res.data.data;
+ })
+ this.CascadeVisible=true;
+ }else if(column.property == 'verifyRule'){
+ this.RulesForm.expressionTextt=this.CurrentCell.verifyRule;
+ this.rulesVisible=true;
+ console.log(this.CurrentCell.verifyRule)
+ console.log(this.RulesForm.expressionText)
+ }
},
saveRows() {
this.editingRows = null;
+ console.log('1321')
},
// 鏋氫妇娉ㄥ叆娣诲姞涓�琛岀┖鏁版嵁
addRow() {
@@ -1306,17 +1611,25 @@
},
//鏋氫妇娉ㄥ叆鍒犻櫎
enumDeleteRow(row) {
- this.tableData.splice(row, 1)
+ this.tableData.splice(row.$index, 1)
},
//鏋氫妇娉ㄥ叆鎸夐挳
enmuVisHandle() {
- if (this.CrudSelect.length > 1) {
+ if (this.attrSelectList.length > 1) {
this.$message.warning('鍙兘閫夋嫨涓�鏉℃ā鏉垮睘鎬�')
- } else if (this.CrudSelect < 1) {
+ } else if (this.attrSelectList < 1) {
this.$message.warning('璇烽�夋嫨涓�鏉℃ā鏉垮睘鎬�')
- } else if (this.CrudSelect.length === 1) {
+ } else if (this.attrSelectList.length === 1) {
this.enumVisible = true;
}
+ },
+ enumBeforeClose(done){
+ this.tableData=[]
+ done()
+ },
+ enumCancell(){
+ this.tableData=[]
+ this.enumVisible=false;
},
//鏋氫妇娉ㄥ叆澶氶�夋
handleSelectionChange(row) {
@@ -1324,19 +1637,46 @@
},
//鏋氫妇娉ㄥ叆淇濆瓨
enumAddHandle() {
- if (this.enumRow.length < 1) {
- this.$message.warning('璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�')
- } else {
- this.$set(this.attrRow, 'enumString', this.enumRow);
- this.enumVisible = false;
+ let hasError = false; // 娣诲姞涓�涓彉閲�
+ this.tableData.forEach((item, index) => {
+ if (item.key === '') {
+ this.$message.warning(`绗�${index + 1}琛岀殑閫夐」鍊间笉鑳戒负绌篳);
+ hasError = true;
+ return;
+ } else if (item.value === '') {
+ this.$message.warning(`绗�${index + 1}琛岀殑閫夐」涓枃鏍囩涓嶈兘涓虹┖`);
+ hasError = true;
+ return;
+ }
+ });
+ // 淇濆瓨鎵ц閫昏緫
+ if (!hasError) {
+ if (this.CurrentCell) {
+ this.$set(this.CurrentCell, 'enumString', JSON.stringify(this.tableData));
+ this.enumVisible = false;
+ } else {
+ this.$set(this.attrSelectList[0], 'enumString', JSON.stringify(this.tableData));
+ this.tableData=[];
+ this.enumVisible = false;
+ }
}
},
- // 灏嗘鍦ㄧ紪杈戠殑琛岀殑鐘舵�佸彉涓� null 锛屽嵆閫�鍑虹紪杈戠姸鎬�
+ // 灏嗘鍦ㄧ紪杈戠殑琛岀殑鐘舵�佸彉涓� null锛屽嵆閫�鍑虹紪杈戠姸鎬�
saveRow() {
this.editingRow = null;
},
+ //楠岃瘉瑙勫垯鎸夐挳
+ ruleAddHandler(){
+ if (this.attrSelectList < 1) {
+ this.$message.warning('璇烽�夋嫨妯℃澘灞炴��')
+ } else{
+ this.rulesVisible=true
+ }
+
+ },
//瑙勫垯鏍¢獙锛屽弻鍑昏〃鍗曚簨浠�
handleRulesRowDBLClick(row) {
+ this.ruleRowBds=row.bds
this.RulesForm.expressionText = row.bds
},
// 楠岃瘉瑙勫垯娓呴櫎鍐呭
@@ -1346,27 +1686,50 @@
},
// 楠岃瘉瑙勫垯纭畾
rulesHandle() {
+ if(this.CurrentCell){
+ this.$set(this.CurrentCell,'verifyRule',this.RulesForm.expressionText)
+ }else {
+ this.attrSelectList.forEach((item)=>{
+ this.$set(item,'verifyRule',this.RulesForm.expressionText)
+ })
+ this.rulesremove()
+ }
this.rulesVisible = false
},
//楠岃瘉瑙勫垯妫�鏌�
rulesExamine() {
- if (this.RulesForm.expressionText.test(this.RulesForm.TestContent)) {
+ console.log(this.RulesForm.expressionText)
+ const regex = new RegExp(this.rulesData.ruleRowBds);
+ if(regex.test(this.RulesForm.TestContent)){
this.$message.success('鏍¢獙鎴愬姛')
}
},
//鐐瑰嚮鍒嗙被娉ㄥ叆鎸夐挳
injectBtn() {
- if (this.CrudSelect.length > 1) {
+ if (this.attrSelectList.length > 1) {
this.$message.warning('鍙兘閫夋嫨涓�鏉℃ā鏉挎暟鎹�')
- } else if (this.CrudSelect.length < 1) {
+ } else if (this.attrSelectList.length < 1) {
this.$message.warning('璇烽�夋嫨涓�鏉℃ā鏉挎暟鎹�')
- } else if (this.CrudSelect.length === 1) {
- this.injectVisible = true
+ } else if (this.attrSelectList.length === 1) {
+ this.injectVisible = true;
+
}
},
//鍒嗙被娉ㄥ叆淇濆瓨
injectAddHandle() {
- this.$set(this.attrRow, 'classifyInvokeLevel', this.injectOption);
+ let data = {
+ "娉ㄥ叆绫诲瀷": this.injectOption.type,
+ "娉ㄥ叆绫诲瀷鍚嶇О": this.injectOption.set,
+ "灞傜骇璁剧疆": this.injectOption.injectNum,
+ "鏄惁鍙慨鏀�": this.injectOption.change
+ }
+ if(this.CurrentCell){
+ this.$set(this.CurrentCell, "classifyInvokeLevelName", data);
+ this.$set(this.CurrentCell, "classifyInvokeLevel", JSON.stringify(this.injectOption));
+ }else {
+ this.$set(this.attrSelectList[0], 'classifyInvokeLevelName', data);
+ this.$set(this.attrSelectList[0], 'classifyInvokeLevel', JSON.stringify(this.injectOption));
+ }
this.injectVisible = false
},
//鍒嗙被娉ㄥ叆娓呯┖
@@ -1381,32 +1744,16 @@
this.injectVisible = false
},
//灞炴�фā鏉胯〃鏍煎崟鍏冩牸鐐瑰嚮浜嬩欢
- handleRowClick(row, column, cell, event) {
- //鍒ゆ柇鐐瑰嚮涓嶆槸鎿嶄綔鏍忔墠鍙墽琛�
- if (column.property != "menu") {
- // 褰撳墠琛屽彉涓哄彲缂栬緫鐘舵��
- this.rowList = row
- row.$cellEdit = true
- // 姣忎竴涓崟鍏冩牸鍔犱笂cell涓簍rue鎵嶆槸缂栬緫鐘舵��
- //鎷垮埌姣忎釜columnKey锛岀偣鍑绘椂璁剧疆涓簍rue锛屽氨瀹炵幇鍗曞厓鏍肩紪杈戠姸鎬佷簡
- this.rowCellList = this.findObject(this.option.column, column.columnKey)
- this.rowCellList.cell = true
- if (this.List.indexOf(column.columnKey) == -1) {
- this.List.push(column.columnKey)
- }
- // if(this.List.length >= 2){
- // const cellName=this.List[0]
- //
- // }
- }
- },
//琛ㄦ牸鎿嶄綔鏍忓垹闄�
- CrudRowDel(row) {
- this.ProData.splice(row.$index, 1)
+ CrudRowDel(index) {
+ this.ProData.splice(index, 1)
},
//琛ㄦ牸鍒犻櫎
CrudRemove() {
- this.ProData.splice(this.attrRow.$index, 1)
+ this.attrSelectList.forEach((item)=>{
+ const index = this.ProData.indexOf(item);
+ this.ProData.splice(index, 1)
+ })
},
//琛ㄦ牸閲嶇疆
reset() {
@@ -1414,11 +1761,11 @@
},
//鍚屾鍒板叾浠栨ā鏉�
syncHandle() {
- if (this.CrudSelect.length > 1) {
+ if (this.attrSelectList.length > 1) {
this.$message.warning('鍙兘閫夋嫨涓�鏉℃ā鏉垮睘鎬ф暟鎹�')
- } else if (this.CrudSelect.length < 1) {
+ } else if (this.attrSelectList.length < 1) {
this.$message.warning('璇烽�夋嫨涓�鏉℃ā鏉垮睘鎬ф暟鎹�')
- } else if (this.CrudSelect.length === 1) {
+ } else if (this.attrSelectList.length === 1) {
copyto({oid: this.attrRow.oid}).then(res => {
this.$message.success('鍚屾鎴愬姛')
})
@@ -1430,12 +1777,12 @@
},
//缁勫悎瑙勫垯
isShowHandler() {
- if (this.CrudSelect.length > 1) {
+ if (this.attrSelectList.length > 1) {
this.$message.warning('鍙兘閫夋嫨涓�鏉℃ā鏉垮睘鎬ф暟鎹�')
- } else if (this.CrudSelect.length < 1) {
+ } else if (this.attrSelectList.length < 1) {
this.$message.warning('璇烽�夋嫨涓�鏉℃ā鏉垮睘鎬ф暟鎹�')
- } else if (this.CrudSelect.length === 1) {
- this.isShowformulaEdit = true;
+ } else if (this.attrSelectList.length === 1) {
+ this.isShowformulaEdit=true
}
},
//鍏ㄥ睆缂栬緫
@@ -1453,8 +1800,14 @@
this.attrFlagChiledren = false;
this.attrEditVisible = false;
},
+ //缁勫悎瑙勫垯纭畾
updataFormlaContent(val) {
- this.$set(this.attrRow, 'componentRule', val)
+ if(this.CurrentCell){
+ this.$set(this.CurrentCell, 'componentRule', JSON.stringify(val))
+ }else {
+ this.$set(this.attrRow, 'componentRule', JSON.stringify(val))
+ }
+
},
// 鎺掑簭
sortChange(val) {
@@ -1474,7 +1827,7 @@
}
</script>
-<style scoped lang="scss">
+<style scoped lang="scss" >
/deep/ .el-button {
margin: 0 10px 10px 0;
}
--
Gitblit v1.9.3