From 175b824c049502e81ddcec7e17f104fce7804cd6 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期二, 15 七月 2025 12:07:46 +0800
Subject: [PATCH] 前端
---
admin/src/api/business/identityInfo.js | 4 +-
admin/src/components/base/BaseOpera.vue | 28 ++++++++++++++
admin/src/views/business/member.vue | 4 +-
admin/src/components/business/OperaIdentityDetailWindow.vue | 29 +++++++-------
4 files changed, 47 insertions(+), 18 deletions(-)
diff --git a/admin/src/api/business/identityInfo.js b/admin/src/api/business/identityInfo.js
index b2ac754..19b6679 100644
--- a/admin/src/api/business/identityInfo.js
+++ b/admin/src/api/business/identityInfo.js
@@ -16,8 +16,8 @@
export function create (data) {
return request.post('/business/identityInfo/create', data)
}
-export function approveDo (data) {
- return request.post('/business/identityInfo/create', data)
+export function audit (data) {
+ return request.post('/business/identityInfo/audit', data)
}
// 淇敼
diff --git a/admin/src/components/base/BaseOpera.vue b/admin/src/components/base/BaseOpera.vue
index 4a364eb..86a2e02 100644
--- a/admin/src/components/base/BaseOpera.vue
+++ b/admin/src/components/base/BaseOpera.vue
@@ -1,4 +1,6 @@
<script>
+import {mapState} from "vuex";
+
export default {
name: 'BaseOpera',
data () {
@@ -13,6 +15,9 @@
'field.id': 'id'
}
}
+ },
+ computed: {
+ ...mapState(['userInfo']),
},
methods: {
/**
@@ -125,6 +130,29 @@
this.isWorking = false
})
})
+ },
+ /**
+ * 鏄惁鍖呭惈鎸囧畾鏉冮檺
+ *
+ * @param permissions 鐩爣鏉冮檺鏁扮粍
+ * @returns {boolean}
+ */
+ containPermissions (permissions) {
+ if (permissions == null) {
+ return true
+ }
+ if (this.userInfo == null) {
+ return false
+ }
+ if (this.userInfo.permissions == null || this.userInfo.permissions.length === 0) {
+ return false
+ }
+ for (const code of permissions) {
+ if (this.userInfo.permissions.findIndex(p => p === code) > -1) {
+ return true
+ }
+ }
+ return false
}
}
}
diff --git a/admin/src/components/business/OperaIdentityDetailWindow.vue b/admin/src/components/business/OperaIdentityDetailWindow.vue
index 5866f44..3872416 100644
--- a/admin/src/components/business/OperaIdentityDetailWindow.vue
+++ b/admin/src/components/business/OperaIdentityDetailWindow.vue
@@ -72,17 +72,17 @@
<span class="label"> 瀹℃牳浜猴細</span> <span class="txt">{{item.editorName}} </span><span class="label">{{item.auditTime || '' }} </span>
<div style="margin-top: 20px"> <span class="label"> 瀹℃牳淇℃伅锛�</span> <span class="txt">{{item.auditRemark || '' }}</span></div>
</div>
- <div class="line bottom" v-if="item.auditStatus == 1" >
- <el-form :model="form" ref="form" :rules="rules">
- <el-form-item label="璁よ瘉瀹℃牳璇存槑" style="font-size: 14px" prop="auditRemark">
- <el-input type="textarea" rows="5" v-model="form.auditRemark" placeholder="璇疯緭鍏ヨ璇佸鏍稿娉�" v-trim/>
- </el-form-item>
- </el-form>
- <el-button @click="checkDo(2)" type="primary" class="status-red">鍚屾剰</el-button>
- <el-button @click="checkDo(3)" type="danger" >鎷掔粷</el-button>
- </div>
</div>
</div>
+ <div class="line bottom" v-if="tableData2&& tableData2.length>0 && tableData2[0].auditStatus == 1 && containPermissions(['business:identityinfo:audit'])" >
+ <el-form :model="form" ref="formCheck" :rules="rules">
+ <el-form-item label="璁よ瘉瀹℃牳璇存槑" style="font-size: 14px" prop="auditRemark">
+ <el-input type="textarea" rows="5" v-model="form.auditRemark" placeholder="璇疯緭鍏ヨ璇佸鏍稿娉�" v-trim/>
+ </el-form-item>
+ </el-form>
+ <el-button @click="checkDo(2)" type="primary" class="status-red">鍚屾剰</el-button>
+ <el-button @click="checkDo(3)" type="danger" >鎷掔粷</el-button>
+ </div>
</div>
</GlobalWindow>
</template>
@@ -91,7 +91,7 @@
import GlobalWindow from '@/components/common/GlobalWindow'
import BaseOpera from '@/components/base/BaseOpera'
import { getById } from '@/api/business/member'
-import { fetchList as renzhengList,approveDo } from '@/api/business/identityInfo'
+import { fetchList as renzhengList,audit } from '@/api/business/identityInfo'
export default {
components: {
GlobalWindow
@@ -168,15 +168,16 @@
},
checkDo (status) {
- this.$refs.form.validate((valid) => {
+ console.log( this.$refs.formCheck.length)
+ this.$refs.formCheck.validate((valid) => {
if (!valid) {
return
}
- this.$dialog.actionConfirm('鎿嶄綔纭', '鎮ㄧ‘璁ゃ��' + (status == 3 ? '鎷掔粷' : '鍚屾剰') + '銆戣鐢宠鍚楋紵')
+ this.$dialog.actionConfirm('鎮ㄧ‘璁ゃ��' + (status === 3 ? '鎷掔粷' : '鍚屾剰') + '銆戣鐢宠鍚楋紵','鎿嶄綔纭')
.then(() => {
this.dealing = true
- approveDo({
- id: this.dataId,
+ audit({
+ id: this.id,
auditStatus: status,
auditRemark: this.form.auditRemark
})
diff --git a/admin/src/views/business/member.vue b/admin/src/views/business/member.vue
index d4a8b24..be349a1 100644
--- a/admin/src/views/business/member.vue
+++ b/admin/src/views/business/member.vue
@@ -77,7 +77,7 @@
</el-switch>
</template>
</el-table-column>
-<!-- <el-table-column
+ <el-table-column
v-if="containPermissions(['business:member:update', 'business:member:delete'])"
label="鎿嶄綔"
min-width="120"
@@ -87,7 +87,7 @@
<el-button type="text" @click="$refs.operaMemberWindow.open('缂栬緫浼氬憳淇℃伅琛�', row)" icon="el-icon-edit" v-permissions="['business:member:update']">缂栬緫</el-button>
<el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:member:delete']">鍒犻櫎</el-button>
</template>
- </el-table-column>-->
+ </el-table-column>
</el-table>
<pagination
@size-change="handleSizeChange"
--
Gitblit v1.9.3