From 208548501db7256ab364f904196f614c4f1a0b40 Mon Sep 17 00:00:00 2001 From: wangting <675591594@qq.com> Date: 星期一, 29 四月 2024 11:51:14 +0800 Subject: [PATCH] 添加action --- Source/ProjectWeb/src/components/dynamic-components/dynamic-button.vue | 46 ++++++++------ Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue | 9 +++ Source/ProjectWeb/src/components/dynamic-components/dynamic-custom.vue | 5 + Source/ProjectWeb/src/components/dynamic-components/index.vue | 9 +++ Source/ProjectWeb/src/views/base/UIContentArea.vue | 8 ++ Source/ProjectWeb/src/components/actions/AddEditDialog.vue | 33 +++++++++- Source/ProjectWeb/src/components/dynamic-components/dynamic-form.vue | 7 ++ Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue | 5 + Source/ProjectWeb/src/components/dynamic-components/dynamic-tree.vue | 5 + 9 files changed, 101 insertions(+), 26 deletions(-) diff --git a/Source/ProjectWeb/src/components/actions/AddEditDialog.vue b/Source/ProjectWeb/src/components/actions/AddEditDialog.vue index a051c80..09b5960 100644 --- a/Source/ProjectWeb/src/components/actions/AddEditDialog.vue +++ b/Source/ProjectWeb/src/components/actions/AddEditDialog.vue @@ -12,19 +12,23 @@ <basic-form ref="formRef" v-if="paramVOS.form" :key="'dialog-'+paramVOS.form" :span="span" + :style="fullscreen?'':'height:'+height" + :isEdit="true" :formItems="formItems" :formData="form"> </basic-form> <ui-view ref="uiViewRef" v-else-if="paramVOS.context" :key="'AddEditDialog-'+type" + :style="fullscreen?'':'height:'+height" :btmType="paramVOS.type" :context="paramVOS.context" :inDialog="true" + :canEdit="true" :sourceData="sourceData" :dataStore="dataStore" :paramVOS="paramVOS" ></ui-view> - <div class="dialog-footer avue-dialog__footer"> + <div v-if="showSave" class="dialog-footer avue-dialog__footer"> <el-button type="primary" plain size="small" @click="saveHandler">淇� 瀛�</el-button> <el-button size="small" @click="dialogClose">鍙� 娑�</el-button> <el-button size="small" @click="resetValue" v-if="paramVOS.form">閲� 缃�</el-button> @@ -36,6 +40,7 @@ import uiView from "@/views/base/UIContentViewerInDialog" import {getFormDefineById,dataForm} from "@/api/base/ui"; import {addSave,editSave} from "@/api/base/actions" +import {validatenull} from "@/util/validate" export default { name: "AddEditDialog", @@ -60,6 +65,7 @@ return { type:"add", visible:false, + showSave:this.paramVOS.customBtn || true, span:12, formItems:[], form:{} @@ -69,11 +75,27 @@ title(){ return this.paramVOS.title || (this.type=='add'?'娣诲姞':'淇敼') }, - width(){ - return this.paramVOS.width || "60%" + width() { + if (!validatenull(this.paramVOS.width)) { + if (this.paramVOS.width.includes("px") || this.paramVOS.width.includes("%")) { + return this.paramVOS.width; + } else { + return this.paramVOS.width + "px"; + } + } else { + return "60%"; + } }, height(){ - return this.paramVOS.height || "500px" + if (!validatenull(this.paramVOS.height)) { + if (this.paramVOS.height.includes("px") || this.paramVOS.height.includes("%")) { + return this.paramVOS.height; + } else { + return this.paramVOS.height + "px"; + } + } else { + return "auto" + } }, fullscreen(){ if(this.paramVOS.width || this.paramVOS.height){ @@ -81,7 +103,7 @@ }else if(this.paramVOS.form){ return false; } - return false; + return true; } }, created() { @@ -139,6 +161,7 @@ }); }else{ //this.$refs.uiViewRef. + debugger; if(this.saveCallback){ this.saveCallback({}); } diff --git a/Source/ProjectWeb/src/components/dynamic-components/dynamic-button.vue b/Source/ProjectWeb/src/components/dynamic-components/dynamic-button.vue index 00548e2..d8fd372 100644 --- a/Source/ProjectWeb/src/components/dynamic-components/dynamic-button.vue +++ b/Source/ProjectWeb/src/components/dynamic-components/dynamic-button.vue @@ -134,7 +134,7 @@ const paramVOS=buttonitem.paramVOS; const DefineVO = this.componentVO.treeDefineVO || this.componentVO.tableDefineVO || this.componentVO.treeTableDefineVO || this.componentVO.formDefineVO; if (!paramVOS['title']) { - paramVOS['title'] = buttonitem.name + (DefineVO.title || DefineVO.componentTitle || ''); + paramVOS['title'] = buttonitem.name + (DefineVO.title || this.componentVO.description || ''); } if (!paramVOS['type']) { @@ -146,29 +146,33 @@ let values = paramVOS['initvalue'].split(';'); let initValues = {} values.forEach((item,i) => { - item = item.replace(':', '='); - if (item.indexOf('${') > -1) { - if (item.split('=')[1].indexOf('.') > -1) { - if (this.sourceData.length < 1 || !this.sourceData.oid) { - isShow = false; - this.$message.error("璇峰厛閫夋嫨涓�鏉℃潵婧愭暟鎹�"); - return false; - } - let name = item.split('=')[1].split('.')[1].replace('${', '').replace('}', ''); - initValues[item.split('=')[0]] = this.sourceData[name] - } else { - if (this.dataStore.length < 1) { - isShow = false; - this.$message.error("璇峰厛閫夋嫨涓�鏉℃暟鎹�"); - return false; - } - let name = item.split('=')[1].replace('${', '').replace('}', ''); - initValues[item.split('=')[0]] = this.dataStore[0][name]; + if(isShow){ + item = item.replace(':', '='); + if (item.indexOf('${') > -1) { + if (item.split('=')[1].indexOf('.') > -1) { + if (this.sourceData.length < 1 || !this.sourceData.oid) { + isShow = false; + this.$message.error("璇峰厛閫夋嫨涓�鏉℃潵婧愭暟鎹�") + return false; + } + let name = item.split('=')[1].split('.')[1].replace('${', '').replace('}', ''); + initValues[item.split('=')[0]] = this.sourceData[name] + } else { + if (this.dataStore.length < 1) { + isShow = false; + this.$message.error("璇峰厛閫夋嫨涓�鏉℃暟鎹�"); + return false; + } + let name = item.split('=')[1].replace('${', '').replace('}', ''); + initValues[item.split('=')[0]] = this.dataStore[0][name]; + } } } }) - paramVOS['initvalue'] = initValues + if(isShow){ + paramVOS['initvalue'] = initValues + } } if(paramVOS['BSContent'] || paramVOS['BSContext']){ paramVOS['context']=paramVOS['BSContext'] || paramVOS['BSContent'] @@ -177,6 +181,8 @@ const that=this; if(isShow) { + //paramVOS.customBtn //寮圭獥榛樿鏈変繚瀛樻寜閽�,customBtn涓簍rue鏃跺唴瀹瑰睍绀鸿嚜瀹氫箟鎸夐挳 + //paramVOS.form="editknowledgefolderall" doAction(buttonitem, { paramVOS: paramVOS, dataStore: this.dataStore || [], diff --git a/Source/ProjectWeb/src/components/dynamic-components/dynamic-custom.vue b/Source/ProjectWeb/src/components/dynamic-components/dynamic-custom.vue index 2358b28..2d6c692 100644 --- a/Source/ProjectWeb/src/components/dynamic-components/dynamic-custom.vue +++ b/Source/ProjectWeb/src/components/dynamic-components/dynamic-custom.vue @@ -49,6 +49,11 @@ type: Boolean, default: false }, + canEdit:{ + //鍐呭鏄惁鍙紪杈� + type:Boolean, + default:false + }, areasName: { type: String, default: '' diff --git a/Source/ProjectWeb/src/components/dynamic-components/dynamic-form.vue b/Source/ProjectWeb/src/components/dynamic-components/dynamic-form.vue index 0ae6114..c05ef39 100644 --- a/Source/ProjectWeb/src/components/dynamic-components/dynamic-form.vue +++ b/Source/ProjectWeb/src/components/dynamic-components/dynamic-form.vue @@ -6,7 +6,7 @@ :span="this.componentVO.formDefineVO.columnOneRow?(24/this.componentVO.formDefineVO.columnOneRow) : 12" :formItems="this.componentVO.formDefineVO && this.componentVO.formDefineVO.items" :disabled="!inDialog" - :isEdit="inDialog" + :isEdit="canEdit" :formData="form"> </basic-form> </div> @@ -34,6 +34,11 @@ type: Boolean, default: false }, + canEdit:{ + //鍐呭鏄惁鍙紪杈� + type:Boolean, + default:false + }, areasName: { type: String, default: '' diff --git a/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue b/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue index 92ee092..9d6fdf3 100644 --- a/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue +++ b/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue @@ -54,6 +54,11 @@ type: Boolean, default: false }, + canEdit:{ + //鍐呭鏄惁鍙紪杈� + type:Boolean, + default:false + }, areasName: { type: String, default: ''//westArea瀵艰埅鍖� diff --git a/Source/ProjectWeb/src/components/dynamic-components/dynamic-tree.vue b/Source/ProjectWeb/src/components/dynamic-components/dynamic-tree.vue index a51cb18..191c5e3 100644 --- a/Source/ProjectWeb/src/components/dynamic-components/dynamic-tree.vue +++ b/Source/ProjectWeb/src/components/dynamic-components/dynamic-tree.vue @@ -50,6 +50,11 @@ type: Boolean, default: false }, + canEdit:{ + //鍐呭鏄惁鍙紪杈� + type:Boolean, + default:false + }, areasName:{ type:String, default:'' diff --git a/Source/ProjectWeb/src/components/dynamic-components/index.vue b/Source/ProjectWeb/src/components/dynamic-components/index.vue index 3ecb0e5..5f62cb1 100644 --- a/Source/ProjectWeb/src/components/dynamic-components/index.vue +++ b/Source/ProjectWeb/src/components/dynamic-components/index.vue @@ -4,6 +4,7 @@ :uiContext="uiContext" :key="areasName+'table-'+componentVO.oid" :inDialog="inDialog" + :canEdit="canEdit" :componentVO="componentVO" :sourceData="sourceData" :sourceBtmType="sourceBtmType" @@ -19,6 +20,7 @@ :uiContext="uiContext" :key="areasName+'form-'+componentVO.oid" :inDialog="inDialog" + :canEdit="canEdit" :componentVO="componentVO" :sourceData="sourceData" :sourceBtmType="sourceBtmType" @@ -34,6 +36,7 @@ :uiContext="uiContext" :key="areasName+'tree-'+componentVO.oid" :inDialog="inDialog" + :canEdit="canEdit" :componentVO="componentVO" :sourceData="sourceData" :sourceBtmType="sourceBtmType" @@ -47,6 +50,7 @@ :uiBtmType="uiBtmType" :uiContext="uiContext" :inDialog="inDialog" + :canEdit="canEdit" :key="areasName+'custom-'+componentVO.oid" :componentVO="componentVO" :sourceData="sourceData" @@ -86,6 +90,11 @@ type: Boolean, default: false }, + canEdit:{ + //鍐呭鏄惁鍙紪杈� + type:Boolean, + default:false + }, areasName:{ type:String, default:'' diff --git a/Source/ProjectWeb/src/views/base/UIContentArea.vue b/Source/ProjectWeb/src/views/base/UIContentArea.vue index 3978afc..4ae0be8 100644 --- a/Source/ProjectWeb/src/views/base/UIContentArea.vue +++ b/Source/ProjectWeb/src/views/base/UIContentArea.vue @@ -25,6 +25,7 @@ :uiBtmType="uiBtmType" :uiContext="uiContext" :inDialog="inDialog" + :canEdit="canEdit" :componentVO="areaItem.componentVOs[0]" :sourceData="newSourceData" :sourceBtmType="sourceBtmType" @@ -47,6 +48,7 @@ :uiBtmType="uiBtmType" :uiContext="uiContext" :inDialog="inDialog" + :canEdit="canEdit" :componentVO="componentVO" :sourceData="newSourceData" :sourceBtmType="sourceBtmType" @@ -63,6 +65,7 @@ :uiBtmType="uiBtmType" :uiContext="uiContext" :inDialog="inDialog" + :canEdit="canEdit" :componentVO="newAreasData[0].componentVOs[0]" :sourceData="newSourceData" :sourceBtmType="sourceBtmType" @@ -122,6 +125,11 @@ type: Boolean, default: false }, + canEdit:{ + //鍐呭鏄惁鍙紪杈� + type:Boolean, + default:false + }, areasName:{ type:String, default:'' diff --git a/Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue b/Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue index 3c680d3..c54bf61 100644 --- a/Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue +++ b/Source/ProjectWeb/src/views/base/UIContentViewerInDialog.vue @@ -9,6 +9,7 @@ :dataStore="checkedData.northAreaInDialog.data" :paramVOS="paramVOS" :inDialog="inDialog" + :canEdit="canEdit" :sourceData="sourceData" :sourceBtmType="btmType" areas-name="northArea" @@ -27,6 +28,7 @@ :dataStore="checkedData.westAreaInDialog.data" :paramVOS="paramVOS" :inDialog="inDialog" + :canEdit="canEdit" :sourceData="sourceData" :sourceBtmType="btmType" areas-name="westArea" @@ -43,6 +45,7 @@ :dataStore="checkedData.centerAreaInDialog.data" :paramVOS="paramVOS" :inDialog="inDialog" + :canEdit="canEdit" :sourceData="checkedData.westAreaInDialog.data[checkedData.westAreaInDialog.data.length-1]" :sourceBtmType="checkedData.westAreaInDialog.DefineVOBtmType" areas-name="centerArea" @@ -59,6 +62,7 @@ :dataStore="checkedData.southAreaInDialog.data" :paramVOS="paramVOS" :inDialog="inDialog" + :canEdit="canEdit" :sourceData="checkedData.centerAreaInDialog.data[checkedData.centerAreaInDialog.data.length-1]" :sourceBtmType="checkedData.centerAreaInDialog.DefineVOBtmType" areas-name="southArea" @@ -90,6 +94,11 @@ type: Boolean, default: false }, + canEdit:{ + //鍐呭鏄惁鍙紪杈� + type:Boolean, + default:false + }, sourceData:{ //鎵�灞炲尯鍩熺殑涓婁竴鍖哄煙閫変腑鏁版嵁 type:Object, -- Gitblit v1.9.3