houyaf 3 år sedan
förälder
incheckning
39f819ecba

+ 5 - 9
pnpm-lock.yaml

@@ -3406,7 +3406,7 @@ packages:
       postcss: ^8.1.0
     dependencies:
       browserslist: 4.21.4
-      caniuse-lite: 1.0.30001426
+      caniuse-lite: 1.0.30001486
       fraction.js: 4.2.0
       normalize-range: 0.1.2
       picocolors: 1.0.0
@@ -3590,7 +3590,7 @@ packages:
     engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
     hasBin: true
     dependencies:
-      caniuse-lite: 1.0.30001426
+      caniuse-lite: 1.0.30001486
       electron-to-chromium: 1.4.284
       node-releases: 2.0.6
       update-browserslist-db: 1.0.10_browserslist@4.21.4
@@ -3601,7 +3601,7 @@ packages:
     engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
     hasBin: true
     dependencies:
-      caniuse-lite: 1.0.30001450
+      caniuse-lite: 1.0.30001486
       electron-to-chromium: 1.4.286
       node-releases: 2.0.9
       update-browserslist-db: 1.0.10_browserslist@4.21.5
@@ -3740,12 +3740,8 @@ packages:
     engines: {node: '>=10'}
     dev: true
 
-  /caniuse-lite/1.0.30001426:
-    resolution: {integrity: sha512-n7cosrHLl8AWt0wwZw/PJZgUg3lV0gk9LMI7ikGJwhyhgsd2Nb65vKvmSexCqq/J7rbH3mFG6yZZiPR5dLPW5A==}
-    dev: true
-
-  /caniuse-lite/1.0.30001450:
-    resolution: {integrity: sha512-qMBmvmQmFXaSxexkjjfMvD5rnDL0+m+dUMZKoDYsGG8iZN29RuYh9eRoMvKsT6uMAWlyUUGDEQGJJYjzCIO9ew==}
+  /caniuse-lite/1.0.30001486:
+    resolution: {integrity: sha512-uv7/gXuHi10Whlj0pp5q/tsK/32J2QSqVRKQhs2j8VsDCjgyruAh/eEXHF822VqO9yT6iZKw3nRwZRSPBE9OQg==}
     dev: true
 
   /capital-case/1.0.4:

+ 40 - 0
src/api/repo/repoObjectApi.ts

@@ -0,0 +1,40 @@
+import apiRequest from '@/network/http/apiRequest'
+
+/**
+ * 获取RepoObject列表
+ * @param repoId
+ * @returns
+ */
+export function getRepoObjectListByID(repoId: number) {
+  return apiRequest({
+    url: `/repo/object/${repoId}`,
+    method: 'GET',
+  })
+}
+
+/**
+ * 添加RepoObject
+ * @param data
+ * @returns
+ */
+export function createRepoObject(data: any) {
+  return apiRequest({
+    url: '/repo/object/add',
+    method: 'POST',
+    data,
+  })
+}
+
+/**
+ * 删除RepoObject
+ * @param repoId
+ * @param modelId
+ * @param objectId
+ * @returns
+ */
+export function deleteRepoObjectById(repoId: number, modelId: number, objectId: number) {
+  return apiRequest({
+    url: `/repo/object/${repoId}/${modelId}/${objectId}`,
+    method: 'DELETE',
+  })
+}

+ 1 - 1
src/views/api/log/index.vue

@@ -2,7 +2,7 @@
 import { ElMessage, ElMessageBox } from 'element-plus'
 import { deleteApiLogById, getApiLogByPage } from '@/api/api/apiLogApi'
 import { getBizData } from '@/api/biz/bizApi'
-const { pagination, getParams, onSizeChange, onCurrentChange } = usePagination()
+const { pagination, onSizeChange, onCurrentChange } = usePagination()
 
 interface TreeNode {
   label: string

+ 8 - 6
src/views/app_center/cat/index.vue

@@ -85,12 +85,14 @@ function onAppCatDel(row: any) {
 
         <el-table-column label="操作" width="250" align="center" fixed="right">
           <template #default="scope">
-            <el-button type="primary" size="small" plain @click="onAppCatEdit(scope.row)">
-              编辑
-            </el-button>
-            <el-button v-if="!scope.row.isFixed" type="danger" size="small" plain @click="onAppCatDel(scope.row)">
-              删除
-            </el-button>
+            <div>
+              <el-button type="primary" size="small" plain @click="onAppCatEdit(scope.row)">
+                编辑
+              </el-button>
+              <el-button v-if="!scope.row.isFixed" type="danger" size="small" plain @click="onAppCatDel(scope.row)">
+                删除
+              </el-button>
+            </div>
           </template>
         </el-table-column>
       </el-table>

+ 11 - 9
src/views/app_center/permit/index.vue

@@ -252,15 +252,17 @@ function goBack() {
 
             <el-table-column label="操作" width="160" header-align="center" align="center">
               <template #default="{ row }">
-                <el-button v-if="row.permitType === 0" size="small" type="primary" @click="onAddSub(row)">
-                  添加
-                </el-button>
-                <el-button size="small" type="success" @click="onEdit(row)">
-                  修改
-                </el-button>
-                <el-button size="small" type="danger" @click="onDelete(row)">
-                  删除
-                </el-button>
+                <div>
+                  <el-button v-if="row.permitType === 0" size="small" type="primary" @click="onAddSub(row)">
+                    添加
+                  </el-button>
+                  <el-button size="small" type="success" @click="onEdit(row)">
+                    修改
+                  </el-button>
+                  <el-button size="small" type="danger" @click="onDelete(row)">
+                    删除
+                  </el-button>
+                </div>
               </template>
             </el-table-column>
           </el-table>

+ 8 - 6
src/views/app_center/removed/index.vue

@@ -76,12 +76,14 @@ function onAppDel(row: any) {
 
         <el-table-column label="操作" width="250" align="center" fixed="right">
           <template #default="scope">
-            <el-button type="primary" size="small" plain @click="onAppPublish(scope.row)">
-              重新上架
-            </el-button>
-            <el-button v-if="!scope.row.isFixed" type="danger" size="small" plain @click="onAppDel(scope.row)">
-              删除
-            </el-button>
+            <div>
+              <el-button type="primary" size="small" plain @click="onAppPublish(scope.row)">
+                重新上架
+              </el-button>
+              <el-button v-if="!scope.row.isFixed" type="danger" size="small" plain @click="onAppDel(scope.row)">
+                删除
+              </el-button>
+            </div>
           </template>
         </el-table-column>
       </el-table>

+ 11 - 3
src/views/biz/biz/index.vue

@@ -279,9 +279,17 @@ const onObjectDelete = (row: any) => {
 
             <el-table-column label="操作" header-align="center" align="center" width="230">
               <template #default="scope">
-                <el-button type="primary" size="small" plain @click="onObjectOAM(scope.row)">行为</el-button>
-                <el-button type="warning" size="small" plain @click="onObjectDetails(scope.row)">详情</el-button>
-                <el-button type="danger" size="small" plain @click="onObjectDelete(scope.row)">删除</el-button>
+                <div>
+                  <el-button type="primary" size="small" plain @click="onObjectOAM(scope.row)">
+                    行为
+                  </el-button>
+                  <el-button type="warning" size="small" plain @click="onObjectDetails(scope.row)">
+                    详情
+                  </el-button>
+                  <el-button type="danger" size="small" plain @click="onObjectDelete(scope.row)">
+                    删除
+                  </el-button>
+                </div>
               </template>
             </el-table-column>
           </el-table>

+ 11 - 6
src/views/biz/oam/index.vue

@@ -236,12 +236,14 @@ function goBack() {
                 border
               >
                 <template #extra>
-                  <el-button type="primary" @click="onObjectOAMEdit">
-                    编辑
-                  </el-button>
-                  <el-button type="primary" @click="onObjectOAMDelete">
-                    删除
-                  </el-button>
+                  <div>
+                    <el-button type="primary" @click="onObjectOAMEdit">
+                      编辑
+                    </el-button>
+                    <el-button type="primary" @click="onObjectOAMDelete">
+                      删除
+                    </el-button>
+                  </div>
                 </template>
 
                 <el-descriptions-item
@@ -344,9 +346,11 @@ function goBack() {
     display: flex;
     flex-direction: column;
     height: 100%;
+
       .search{
         margin: 15px 0;
       }
+
       .btns {
       display: inline-flex;
       width: 100%;
@@ -408,6 +412,7 @@ function goBack() {
     }
   }
 }
+
 .question {
   .answer {
     margin: 20px 0 0;

+ 23 - 17
src/views/biz/oam_mapping/index.vue

@@ -122,7 +122,8 @@ async function onMappingSave(row: any) {
     const { msg } = await createObjectOAMMapping(row)
     ElMessage.success(msg)
     state.dialogVisible = false
-  } else {
+  }
+  else {
     const { msg } = await updateObjectOAMMapping(row)
     ElMessage.success(msg)
     state.dialogVisible = false
@@ -209,24 +210,28 @@ defineExpose({
       <el-table-column label="操作" width="140" align="center">
         <template #default="scope">
           <template v-if="scope.row.isEdit">
-            <el-button type="primary" plain size="small" @click="onMappingSave(scope.row)">
-              保存
-            </el-button>
-            <el-button type="primary" plain size="small" @click="onMappingCancel(scope.row, scope.$index)">
-              取消
-            </el-button>
+            <div>
+              <el-button type="primary" plain size="small" @click="onMappingSave(scope.row)">
+                保存
+              </el-button>
+              <el-button type="primary" plain size="small" @click="onMappingCancel(scope.row, scope.$index)">
+                取消
+              </el-button>
+            </div>
           </template>
           <template v-else>
-            <el-button type="primary" plain size="small" @click="onMappingEdit(scope.row)">
-              编辑
-            </el-button>
-            <el-popconfirm title="是否要删除此行?" style="margin-left: 10px;" @confirm="onMappingDelete(scope.row)">
-              <template #reference>
-                <el-button type="danger" plain size="small">
-                  删除
-                </el-button>
-              </template>
-            </el-popconfirm>
+            <div>
+              <el-button type="primary" plain size="small" @click="onMappingEdit(scope.row)">
+                编辑
+              </el-button>
+              <el-popconfirm title="是否要删除此行?" style="margin-left: 10px;" @confirm="onMappingDelete(scope.row)">
+                <template #reference>
+                  <el-button type="danger" plain size="small">
+                    删除
+                  </el-button>
+                </template>
+              </el-popconfirm>
+            </div>
           </template>
         </template>
       </el-table-column>
@@ -259,6 +264,7 @@ defineExpose({
       }
     }
   }
+
   h5{
     padding: 0;
     margin: 0;

+ 22 - 16
src/views/biz/oam_params/index.vue

@@ -265,24 +265,28 @@ defineExpose({
       <el-table-column label="操作" width="140" align="center">
         <template #default="scope">
           <template v-if="scope.row.isEdit">
-            <el-button type="primary" plain size="small" @click="onParamSave(scope.row)">
-              保存
-            </el-button>
-            <el-button type="primary" plain size="small" @click="onParamCancel(scope.row, scope.$index)">
-              取消
-            </el-button>
+            <div>
+              <el-button type="primary" plain size="small" @click="onParamSave(scope.row)">
+                保存
+              </el-button>
+              <el-button type="primary" plain size="small" @click="onParamCancel(scope.row, scope.$index)">
+                取消
+              </el-button>
+            </div>
           </template>
           <template v-else>
-            <el-button type="primary" plain size="small" @click="onParamEdit(scope.row)">
-              编辑
-            </el-button>
-            <el-popconfirm title="是否要删除此行?" style="margin-left: 10px;" @confirm="onParamDelete(scope.row)">
-              <template #reference>
-                <el-button type="danger" plain size="small">
-                  删除
-                </el-button>
-              </template>
-            </el-popconfirm>
+            <div>
+              <el-button type="primary" plain size="small" @click="onParamEdit(scope.row)">
+                编辑
+              </el-button>
+              <el-popconfirm title="是否要删除此行?" style="margin-left: 10px;" @confirm="onParamDelete(scope.row)">
+                <template #reference>
+                  <el-button type="danger" plain size="small">
+                    删除
+                  </el-button>
+                </template>
+              </el-popconfirm>
+            </div>
           </template>
         </template>
       </el-table-column>
@@ -294,6 +298,7 @@ defineExpose({
 .container {
   margin-top: 10px;
 }
+
 .page-main {
   :deep(.el-table) {
     height: 100%;
@@ -318,6 +323,7 @@ defineExpose({
       }
     }
   }
+
   h5{
     padding: 0;
     margin: 0;

+ 22 - 16
src/views/biz/oam_rule/index.vue

@@ -201,24 +201,29 @@ defineExpose({
       <el-table-column label="操作" align="center" width="180">
         <template #default="scope">
           <template v-if="scope.row.isEdit">
-            <el-button type="primary" plain size="small" @click="onRuleSave(scope.row)">
-              保存
-            </el-button>
-            <el-button type="primary" plain size="small" @click="onRuleCancel(scope.row, scope.$index)">
-              取消
-            </el-button>
+            <div>
+              <el-button type="primary" plain size="small" @click="onRuleSave(scope.row)">
+                保存
+              </el-button>
+              <el-button type="primary" plain size="small" @click="onRuleCancel(scope.row, scope.$index)">
+                取消
+              </el-button>
+            </div>
           </template>
+
           <template v-else>
-            <el-button type="primary" plain size="small" @click="onRuleEdit(scope.row)">
-              编辑
-            </el-button>
-            <el-popconfirm title="是否要删除此行?" style="margin-left: 10px;" @confirm="onRuleDelete(scope.row)">
-              <template #reference>
-                <el-button type="danger" plain size="small">
-                  删除
-                </el-button>
-              </template>
-            </el-popconfirm>
+            <div>
+              <el-button type="primary" plain size="small" @click="onRuleEdit(scope.row)">
+                编辑
+              </el-button>
+              <el-popconfirm title="是否要删除此行?" style="margin-left: 10px;" @confirm="onRuleDelete(scope.row)">
+                <template #reference>
+                  <el-button type="danger" plain size="small">
+                    删除
+                  </el-button>
+                </template>
+              </el-popconfirm>
+            </div>
           </template>
         </template>
       </el-table-column>
@@ -251,6 +256,7 @@ defineExpose({
       }
     }
   }
+
   h5{
     padding: 0;
     margin: 0;

+ 22 - 16
src/views/biz/object_attr/index.vue

@@ -269,24 +269,29 @@ onMounted(() => {
         <el-table-column label="操作" width="140" align="center">
           <template #default="scope">
             <template v-if="scope.row.isEdit">
-              <el-button type="primary" plain size="small" @click="onAttrSave(scope.row)">
-                保存
-              </el-button>
-              <el-button type="primary" plain size="small" @click="onAttrCancel(scope.row, scope.$index)">
-                取消
-              </el-button>
+              <div>
+                <el-button type="primary" plain size="small" @click="onAttrSave(scope.row)">
+                  保存
+                </el-button>
+                <el-button type="primary" plain size="small" @click="onAttrCancel(scope.row, scope.$index)">
+                  取消
+                </el-button>
+              </div>
             </template>
+
             <template v-else>
-              <el-button type="primary" plain size="small" @click="onAttrEdit(scope.row)">
-                编辑
-              </el-button>
-              <el-popconfirm title="是否要删除此行?" style="margin-left: 10px;" @confirm="onAttrDelete(scope.row)">
-                <template #reference>
-                  <el-button type="danger" plain size="small">
-                    删除
-                  </el-button>
-                </template>
-              </el-popconfirm>
+              <div>
+                <el-button type="primary" plain size="small" @click="onAttrEdit(scope.row)">
+                  编辑
+                </el-button>
+                <el-popconfirm title="是否要删除此行?" style="margin-left: 10px;" @confirm="onAttrDelete(scope.row)">
+                  <template #reference>
+                    <el-button type="danger" plain size="small">
+                      删除
+                    </el-button>
+                  </template>
+                </el-popconfirm>
+              </div>
             </template>
           </template>
         </el-table-column>
@@ -320,6 +325,7 @@ onMounted(() => {
       }
     }
   }
+
   h5{
     padding: 0;
     margin: 0;

+ 11 - 9
src/views/customer/ent/index.vue

@@ -195,15 +195,17 @@ function onPasswordReset(row: { ocId: number; adminId: number; adminName: string
 
         <el-table-column label="操作" header-align="center" align="center" width="220">
           <template #default="scope">
-            <el-button type="primary" size="small" plain @click="onOcEdit(scope.row)">
-              编辑
-            </el-button>
-            <el-button v-if="!scope.row.isFixed" type="danger" size="small" plain @click="onOcDel(scope.row)">
-              删除
-            </el-button>
-            <el-button v-if="!scope.row.adminId > 0" type="danger" size="small" plain @click="onPasswordReset(scope.row)">
-              重置管理员密码
-            </el-button>
+            <div>
+              <el-button type="primary" size="small" plain @click="onOcEdit(scope.row)">
+                编辑
+              </el-button>
+              <el-button v-if="!scope.row.isFixed" type="danger" size="small" plain @click="onOcDel(scope.row)">
+                删除
+              </el-button>
+              <el-button v-if="!scope.row.adminId > 0" type="danger" size="small" plain @click="onPasswordReset(scope.row)">
+                重置管理员密码
+              </el-button>
+            </div>
           </template>
         </el-table-column>
       </el-table>

+ 11 - 9
src/views/customer/org/index.vue

@@ -191,15 +191,17 @@ function onPasswordReset(row: { ocId: number; adminId: number; adminName: string
 
         <el-table-column label="操作" header-align="center" align="center" width="220">
           <template #default="scope">
-            <el-button type="primary" size="small" plain @click="onOcEdit(scope.row)">
-              编辑
-            </el-button>
-            <el-button v-if="!scope.row.isFixed" type="danger" size="small" plain @click="onOcDel(scope.row)">
-              删除
-            </el-button>
-            <el-button v-if="!scope.row.adminId > 0" type="danger" size="small" plain @click="onPasswordReset(scope.row)">
-              重置管理员密码
-            </el-button>
+            <div>
+              <el-button type="primary" size="small" plain @click="onOcEdit(scope.row)">
+                编辑
+              </el-button>
+              <el-button v-if="!scope.row.isFixed" type="danger" size="small" plain @click="onOcDel(scope.row)">
+                删除
+              </el-button>
+              <el-button v-if="!scope.row.adminId > 0" type="danger" size="small" plain @click="onPasswordReset(scope.row)">
+                重置管理员密码
+              </el-button>
+            </div>
           </template>
         </el-table-column>
       </el-table>

+ 11 - 9
src/views/customer/partner/index.vue

@@ -188,15 +188,17 @@ function onPasswordReset(row: { ocId: number; adminId: number; adminName: string
 
         <el-table-column label="操作" header-align="center" align="center" width="220">
           <template #default="scope">
-            <el-button type="primary" size="small" plain @click="onOcEdit(scope.row)">
-              编辑
-            </el-button>
-            <el-button v-if="!scope.row.isFixed" type="danger" size="small" plain @click="onOcDel(scope.row)">
-              删除
-            </el-button>
-            <el-button v-if="!scope.row.adminId > 0" type="danger" size="small" plain @click="onPasswordReset(scope.row)">
-              重置管理员密码
-            </el-button>
+            <div>
+              <el-button type="primary" size="small" plain @click="onOcEdit(scope.row)">
+                编辑
+              </el-button>
+              <el-button v-if="!scope.row.isFixed" type="danger" size="small" plain @click="onOcDel(scope.row)">
+                删除
+              </el-button>
+              <el-button v-if="!scope.row.adminId > 0" type="danger" size="small" plain @click="onPasswordReset(scope.row)">
+                重置管理员密码
+              </el-button>
+            </div>
           </template>
         </el-table-column>
       </el-table>

+ 17 - 7
src/views/model/model/index.vue

@@ -261,10 +261,12 @@ const onObjectDelete = (row: any) => {
 
             <el-table-column prop="objectTitle" label="名称" header-align="center" align="center" width="200">
               <template #default="scope">
-                <el-icon>
-                  <svg-icon name="uim:box" />
-                </el-icon>
-                <span>{{ scope.row.objectTitle }}</span>
+                <div>
+                  <el-icon>
+                    <svg-icon name="uim:box" />
+                  </el-icon>
+                  <span>{{ scope.row.objectTitle }}</span>
+                </div>
               </template>
             </el-table-column>
 
@@ -289,9 +291,17 @@ const onObjectDelete = (row: any) => {
 
             <el-table-column label="操作" header-align="center" align="center" width="220">
               <template #default="scope">
-                <el-button type="primary" size="small" plain @click="onObjectOAM(scope.row)">行为</el-button>
-                <el-button type="warning" size="small" plain @click="onObjectDetails(scope.row)">详情</el-button>
-                <el-button type="danger" size="small" plain @click="onObjectDelete(scope.row)">删除</el-button>
+                <div>
+                  <el-button type="primary" size="small" plain @click="onObjectOAM(scope.row)">
+                    行为
+                  </el-button>
+                  <el-button type="warning" size="small" plain @click="onObjectDetails(scope.row)">
+                    详情
+                  </el-button>
+                  <el-button type="danger" size="small" plain @click="onObjectDelete(scope.row)">
+                    删除
+                  </el-button>
+                </div>
               </template>
             </el-table-column>
           </el-table>

+ 21 - 16
src/views/model/object_attr/index.vue

@@ -282,24 +282,28 @@ onMounted(() => {
         <el-table-column label="操作" width="140" align="center">
           <template #default="scope">
             <template v-if="scope.row.isEdit">
-              <el-button type="primary" plain size="small" @click="onAttrSave(scope.row)">
-                保存
-              </el-button>
-              <el-button type="primary" plain size="small" @click="onAttrCancel(scope.row, scope.$index)">
-                取消
-              </el-button>
+              <div>
+                <el-button type="primary" plain size="small" @click="onAttrSave(scope.row)">
+                  保存
+                </el-button>
+                <el-button type="primary" plain size="small" @click="onAttrCancel(scope.row, scope.$index)">
+                  取消
+                </el-button>
+              </div>
             </template>
             <template v-else>
-              <el-button type="primary" plain size="small" @click="onAttrEdit(scope.row)">
-                编辑
-              </el-button>
-              <el-popconfirm title="是否要删除此行?" style="margin-left: 10px;" @confirm="onAttrDelete(scope.row)">
-                <template #reference>
-                  <el-button type="danger" plain size="small">
-                    删除
-                  </el-button>
-                </template>
-              </el-popconfirm>
+              <div>
+                <el-button type="primary" plain size="small" @click="onAttrEdit(scope.row)">
+                  编辑
+                </el-button>
+                <el-popconfirm title="是否要删除此行?" style="margin-left: 10px;" @confirm="onAttrDelete(scope.row)">
+                  <template #reference>
+                    <el-button type="danger" plain size="small">
+                      删除
+                    </el-button>
+                  </template>
+                </el-popconfirm>
+              </div>
             </template>
           </template>
         </el-table-column>
@@ -333,6 +337,7 @@ onMounted(() => {
       }
     }
   }
+
   h5{
     padding: 0;
     margin: 0;

+ 8 - 2
src/views/repository/cat/index.vue

@@ -181,8 +181,14 @@ const onRepoCatDelete = (row: any) => {
 
             <el-table-column label="操作" header-align="center" align="center" width="220">
               <template #default="scope">
-                <el-button type="warning" size="small" plain @click="onRepoCatEdit(scope.row)">编辑</el-button>
-                <el-button v-if="scope.row.isFixed <= 0" type="danger" size="small" plain @click="onRepoCatDelete(scope.row)">删除</el-button>
+                <div>
+                  <el-button type="warning" size="small" plain @click="onRepoCatEdit(scope.row)">
+                    编辑
+                  </el-button>
+                  <el-button v-if="scope.row.isFixed <= 0" type="danger" size="small" plain @click="onRepoCatDelete(scope.row)">
+                    删除
+                  </el-button>
+                </div>
               </template>
             </el-table-column>
           </el-table>

+ 53 - 1
src/views/repository/db/index.vue

@@ -103,6 +103,21 @@ const onSearch = () => {
   getData()
 }
 
+// 添加对象
+const onRepoObjectAdd = () => {
+
+}
+
+// 编辑对像
+const onRepoObjectEdit = () => {
+
+}
+
+// 删除对象
+const onRepoObjectDelete = () => {
+
+}
+
 // 返回列表页
 function goBack() {
   if (settingsStore.settings.tabbar.enable && settingsStore.settings.tabbar.mergeTabsBy !== 'activeMenu') {
@@ -128,8 +143,26 @@ function goBack() {
     </page-header>
 
     <div class="page-main">
-      <LayoutContainer left-side-width="250px" hide-left-side-toggle>
+      <LayoutContainer left-side-width="300px" hide-left-side-toggle>
         <template #leftSide>
+          <el-button-group class="btns">
+            <el-button type="primary" class="add" @click="onRepoObjectAdd()">
+              <template #icon>
+                <el-icon>
+                  <svg-icon name="i-ep:plus" />
+                </el-icon>
+              </template>
+              对象行为
+            </el-button>
+            <el-button @click="getTreeData">
+              <template #icon>
+                <el-icon>
+                  <svg-icon name="i-ep:refresh" />
+                </el-icon>
+              </template>
+            </el-button>
+          </el-button-group>
+
           <el-scrollbar class="tree">
             <ElTree ref="leftTreeRef" :data="state.treeData" default-expand-all node-key="modelId" @node-click="onTreeNodeClick">
               <template #default="{ node, data }">
@@ -144,6 +177,25 @@ function goBack() {
                     <div class="text">
                       {{ data.label }}
                     </div>
+
+                    <div class="actions">
+                      <el-button-group>
+                        <el-button type="info" plain size="default" @click.stop="onRepoObjectEdit(node, data)">
+                          <template #icon>
+                            <el-icon>
+                              <svg-icon name="i-ep:edit" />
+                            </el-icon>
+                          </template>
+                        </el-button>
+                        <el-button type="danger" plain size="default" @click.stop="onRepoObjectDelete(node, data)">
+                          <template #icon>
+                            <el-icon>
+                              <svg-icon name="i-ep:delete" />
+                            </el-icon>
+                          </template>
+                        </el-button>
+                      </el-button-group>
+                    </div>
                   </div>
                 </div>
               </template>

+ 11 - 9
src/views/repository/repo/index.vue

@@ -146,15 +146,17 @@ const onRepoDetails = (row: { repoTypeId: number; repoId: number }) => {
 
             <el-table-column label="操作" width="220" header-align="center" align="right" fixed="right">
               <template #default="scope">
-                <el-button type="primary" size="small" plain @click="onRepoDetails(scope.row)">
-                  详情
-                </el-button>
-                <el-button type="warning" size="small" plain @click="onRepoEdit(scope.row)">
-                  编辑
-                </el-button>
-                <el-button v-if="!scope.row.isFixed" type="danger" size="small" plain @click="onRepoDel(scope.row)">
-                  删除
-                </el-button>
+                <div>
+                  <el-button type="primary" size="small" plain @click="onRepoDetails(scope.row)">
+                    详情
+                  </el-button>
+                  <el-button type="warning" size="small" plain @click="onRepoEdit(scope.row)">
+                    编辑
+                  </el-button>
+                  <el-button v-if="!scope.row.isFixed" type="danger" size="small" plain @click="onRepoDel(scope.row)">
+                    删除
+                  </el-button>
+                </div>
               </template>
             </el-table-column>
           </el-table>

+ 8 - 6
src/views/repository/type/index.vue

@@ -85,12 +85,14 @@ function onDbTypeDel(row: any) {
 
         <el-table-column label="操作" width="250" align="center" fixed="right">
           <template #default="scope">
-            <el-button type="primary" size="small" plain @click="onDbTypeEdit(scope.row)">
-              编辑
-            </el-button>
-            <el-button v-if="!scope.row.isFixed" type="danger" size="small" plain @click="onDbTypeDel(scope.row)">
-              删除
-            </el-button>
+            <div>
+              <el-button type="primary" size="small" plain @click="onDbTypeEdit(scope.row)">
+                编辑
+              </el-button>
+              <el-button v-if="!scope.row.isFixed" type="danger" size="small" plain @click="onDbTypeDel(scope.row)">
+                删除
+              </el-button>
+            </div>
           </template>
         </el-table-column>
       </el-table>

+ 37 - 34
src/views/system/group/index.vue

@@ -302,46 +302,49 @@ const getGroupList = () => {}
 
             <el-table-column label="操作" header-align="center" align="center" width="220">
               <template #default="scope">
-                <el-button size="small" type="primary" @click="onUserEdit(scope.row)">
-                  修改
-                </el-button>
-                <el-button v-if="scope.row.isFixed !== 1" size="small" type="danger" @click="onUserDelete(scope.row)">
-                  删除
-                </el-button>
-                <el-dropdown v-if="scope.row.isFixed !== 1" @command="onCommand($event, scope.row)">
-                  <el-button size="small">
-                    更多
-                    <el-icon class="el-icon--right">
-                      <svg-icon name="i-ep:arrow-down" />
-                    </el-icon>
+                <div>
+                  <el-button size="small" type="primary" @click="onUserEdit(scope.row)">
+                    修改
                   </el-button>
-                  <template #dropdown="{ row }">
-                    <el-dropdown-menu>
-                      <template v-if="row && row.grantGroupId > 0">
-                        <el-dropdown-item command="GrantGroupEdit">
-                          编辑授权
-                        </el-dropdown-item>
-                        <el-dropdown-item command="GrantGroupDelete">
-                          解除授权
+                  <el-button v-if="scope.row.isFixed !== 1" size="small" type="danger" @click="onUserDelete(scope.row)">
+                    删除
+                  </el-button>
+                  <el-dropdown v-if="scope.row.isFixed !== 1" @command="onCommand($event, scope.row)">
+                    <el-button size="small">
+                      更多
+                      <el-icon class="el-icon--right">
+                        <svg-icon name="i-ep:arrow-down" />
+                      </el-icon>
+                    </el-button>
+                    <template #dropdown="{ row }">
+                      <el-dropdown-menu>
+                        <template v-if="row && row.grantGroupId > 0">
+                          <el-dropdown-item command="GrantGroupEdit">
+                            编辑授权
+                          </el-dropdown-item>
+                          <el-dropdown-item command="GrantGroupDelete">
+                            解除授权
+                          </el-dropdown-item>
+                        </template>
+                        <template v-else>
+                          <el-dropdown-item command="GrantGroupAdd">
+                            添加授权
+                          </el-dropdown-item>
+                        </template>
+                        <el-dropdown-item command="ResetPwd">
+                          重置密码
                         </el-dropdown-item>
-                      </template>
-                      <template v-else>
-                        <el-dropdown-item command="GrantGroupAdd">
-                          添加授权
+                        <el-dropdown-item command="Permit">
+                          权限配置
                         </el-dropdown-item>
-                      </template>
-                      <el-dropdown-item command="ResetPwd">
-                        重置密码
-                      </el-dropdown-item>
-                      <el-dropdown-item command="Permit">
-                        权限配置
-                      </el-dropdown-item>
-                    </el-dropdown-menu>
-                  </template>
-                </el-dropdown>
+                      </el-dropdown-menu>
+                    </template>
+                  </el-dropdown>
+                </div>
               </template>
             </el-table-column>
           </el-table>
+
           <el-pagination :current-page="pagination.page" :total="pagination.total" :page-size="pagination.size" :page-sizes="pagination.sizes" :layout="pagination.layout" :hide-on-single-page="false" class="pagination" background @current-change="currentChange" @size-change="sizeChange" />
         </div>
       </LayoutContainer>

+ 8 - 6
src/views/system/permit/role/index.vue

@@ -108,12 +108,14 @@ function onRoleDel(row: any) {
         <el-table-column prop="roleName" label="名称" />
         <el-table-column label="操作" width="250" align="center" fixed="right">
           <template #default="scope">
-            <el-button type="primary" size="small" plain @click="onRoleEdit(scope.row)">
-              编辑
-            </el-button>
-            <el-button type="danger" size="small" plain @click="onRoleDel(scope.row)">
-              删除
-            </el-button>
+            <div>
+              <el-button type="primary" size="small" plain @click="onRoleEdit(scope.row)">
+                编辑
+              </el-button>
+              <el-button type="danger" size="small" plain @click="onRoleDel(scope.row)">
+                删除
+              </el-button>
+            </div>
           </template>
         </el-table-column>
       </el-table>

+ 8 - 6
src/views/system/position/index.vue

@@ -85,12 +85,14 @@ function onPositionDel(row: any) {
 
         <el-table-column label="操作" width="250" align="center" fixed="right">
           <template #default="scope">
-            <el-button type="primary" size="small" plain @click="onPositionEdit(scope.row)">
-              编辑
-            </el-button>
-            <el-button v-if="!scope.row.isFixed" type="danger" size="small" plain @click="onPositionDel(scope.row)">
-              删除
-            </el-button>
+            <div>
+              <el-button type="primary" size="small" plain @click="onPositionEdit(scope.row)">
+                编辑
+              </el-button>
+              <el-button v-if="!scope.row.isFixed" type="danger" size="small" plain @click="onPositionDel(scope.row)">
+                删除
+              </el-button>
+            </div>
           </template>
         </el-table-column>
       </el-table>

+ 8 - 6
src/views/system/role/index.vue

@@ -87,12 +87,14 @@ function onRoleDel(row: any) {
 
         <el-table-column label="操作" width="150" align="center" fixed="right">
           <template #default="scope">
-            <el-button type="primary" size="small" plain @click="onRoleEdit(scope.row)">
-              编辑
-            </el-button>
-            <el-button v-if="!scope.row.isFixed" type="danger" size="small" plain @click="onRoleDel(scope.row)">
-              删除
-            </el-button>
+            <div>
+              <el-button type="primary" size="small" plain @click="onRoleEdit(scope.row)">
+                编辑
+              </el-button>
+              <el-button v-if="!scope.row.isFixed" type="danger" size="small" plain @click="onRoleDel(scope.row)">
+                删除
+              </el-button>
+            </div>
           </template>
         </el-table-column>
       </el-table>