From 9d7979a2933632bc2083c7f0b3e4a793b0dc3f3e Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期二, 15 七月 2025 12:10:14 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
admin/src/api/business/identityInfo.js | 3 +
admin/src/components/base/BaseOpera.vue | 28 +++++++++
admin/src/views/business/member.vue | 4
admin/src/views/business/identityInfo.vue | 15 ++--
server/services/src/main/java/com/doumee/dao/business/model/IdentityInfo.java | 3 -
admin/src/components/business/OperaMemberDetailWindow.vue | 8 +-
server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java | 21 ++----
admin/src/components/business/OperaIdentityDetailWindow.vue | 63 ++++++++++++++++++--
8 files changed, 108 insertions(+), 37 deletions(-)
diff --git a/admin/src/api/business/identityInfo.js b/admin/src/api/business/identityInfo.js
index 755bbb2..19b6679 100644
--- a/admin/src/api/business/identityInfo.js
+++ b/admin/src/api/business/identityInfo.js
@@ -16,6 +16,9 @@
export function create (data) {
return request.post('/business/identityInfo/create', data)
}
+export function audit (data) {
+ return request.post('/business/identityInfo/audit', data)
+}
// 淇敼
export function updateById (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 698e2be..3872416 100644
--- a/admin/src/components/business/OperaIdentityDetailWindow.vue
+++ b/admin/src/components/business/OperaIdentityDetailWindow.vue
@@ -7,7 +7,7 @@
:confirm-working="isWorking"
@close="close"
@confirm="confirm">
- <div style="width: 100%; position: sticky;padding: 12px 16px; top: 0px; left: 0; z-index: 999; background-color: white">
+ <div style="width: calc(100% - 32px); position: sticky;padding: 12px 16px; top: 0px; left: 0; z-index: 999; background-color: white">
<div style="display: flex;background: #e4ecfe;padding: 20px">
<div style="width: 60px;">
<div class="home_title" v-if="info">
@@ -21,8 +21,7 @@
<div style="width: calc(100% - 60px);">
<div class="home_title" v-if="info">
<div class="left">
- <span class="m10">鏄电О锛歿{info.nickName }}</span>
- <span class="mr10 bluebtn" :title="'濮撳悕锛�'+(info.name||'鏈缃鍚�')" >({{(info.name||'鏈缃鍚�') }})</span>
+ <span class="m10">鏄电О锛歿{info.nickName }} <span class="ml10 bluebtn" :title="'濮撳悕锛�'+(info.name||'鏈缃鍚�')" >({{(info.name||'鏈缃鍚�') }})</span></span>
<el-tag type="primary" class="mr10 tag1">鍙戝崟鏂�</el-tag>
<el-tag type="success" class="mr10 tag1" v-if="info.workerIdentity == 2 || info.driverIdentity == 2 || info.chefIdentity == 2">鎺ュ崟鏂�</el-tag>
</div>
@@ -41,7 +40,7 @@
<span class="m10" v-if="item.type ==0">鐢ㄥ伐璁よ瘉</span>
<span class="m10" v-if="item.type ==1">璐ц繍璁よ瘉</span>
<span class="m10" v-if="item.type ==2">渚涢璁よ瘉</span>
- <el-tag type="primary" class="ml10 tag2" v-if="item.auditStatus == 1">璁よ瘉涓�</el-tag>
+ <el-tag type="primary" class="ml10 tag2" v-if="item.auditStatus == 1">鐢宠涓�</el-tag>
<el-tag type="success" class="ml10 tag2" v-if="item.auditStatus == 2">璁よ瘉閫氳繃</el-tag>
<el-tag type="danger" class="ml10 tag2" v-if="item.auditStatus == 3">璁よ瘉澶辫触</el-tag>
</div>
@@ -50,6 +49,7 @@
<span class="label"> 璁よ瘉绫诲瀷锛�</span> <span class="txt">{{item.authType == 0? '涓汉':'浼佷笟' }}</span>
<span class="label"> 鑱旂郴浜猴細</span> <span class="txt">{{item.linkName || '' }}</span>
<span class="label"> 鑱旂郴鏂瑰紡锛�</span> <span class="txt">{{item.telephone || '' }}</span>
+ <span class="label"> 鐢宠鏃堕棿锛�</span> <span class="txt">{{item.createTime || '' }}</span>
</div>
<template v-if="item.authType ==1">
<div class="line">
@@ -74,6 +74,15 @@
</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>
@@ -82,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} from '@/api/business/identityInfo'
+import { fetchList as renzhengList,audit } from '@/api/business/identityInfo'
export default {
components: {
GlobalWindow
@@ -90,6 +99,11 @@
extends: BaseOpera,
data () {
return {
+ form: {
+ id: null,
+ auditRemark: null
+ },
+ rules: { auditRemark: [{ required: true, message: '璇疯緭鍏ヨ璇佸鏍稿娉�' }] },
id: '',
memberId: '',
visible: false,
@@ -101,7 +115,7 @@
total: 0,
tableData: {},
tableData1: {},
- tableData2:[],
+ tableData2: [],
page0: 1,
page1: 1,
loading: false,
@@ -129,6 +143,7 @@
this.tableData1 = {}
this.tableData2 = []
this.id = row.id
+ this.form.id = this.id
this.memberId = row.memberId
this.searchForm = {
type: 0,
@@ -152,12 +167,37 @@
close () {
},
+ checkDo (status) {
+ console.log( this.$refs.formCheck.length)
+ this.$refs.formCheck.validate((valid) => {
+ if (!valid) {
+ return
+ }
+ this.$dialog.actionConfirm('鎮ㄧ‘璁ゃ��' + (status === 3 ? '鎷掔粷' : '鍚屾剰') + '銆戣鐢宠鍚楋紵','鎿嶄綔纭')
+ .then(() => {
+ this.dealing = true
+ audit({
+ id: this.id,
+ auditStatus: status,
+ auditRemark: this.form.auditRemark
+ })
+ .then(res => {
+ this.$tip.apiSuccess('澶勭悊鎴愬姛')
+ this.getData()
+ this.isShowProblem = false
+ })
+ .finally(() => {
+ this.dealing = false
+ })
+ })
+ })
+ },
getRenzhengList () {
this.loading = true
renzhengList({
page: 1,
capacity: 1000000,
- model:{
+ model: {
memberId: this.memberId || -1,
id: this.id || -1
}
@@ -176,6 +216,15 @@
<style lang="scss" scoped>
@import '@/assets/style/variables.scss';
+.bottom{
+ text-align: center;
+ display: block;
+ height: auto;
+ background-color: #e4ecfe;
+ width: calc(100% - 32px);
+ z-index: 999;
+ padding: 16px;
+}
.renzheng{
margin: 0px 0px 50px 20px;
width: calc(100% - 60px);
diff --git a/admin/src/components/business/OperaMemberDetailWindow.vue b/admin/src/components/business/OperaMemberDetailWindow.vue
index 33d525e..7b5a453 100644
--- a/admin/src/components/business/OperaMemberDetailWindow.vue
+++ b/admin/src/components/business/OperaMemberDetailWindow.vue
@@ -7,7 +7,7 @@
:confirm-working="isWorking"
@close="close"
@confirm="confirm">
- <div style="width: 100%; position: sticky;padding: 12px 16px; top: 0px; left: 0; z-index: 999; background-color: white">
+ <div style="width: calc(100% - 32px); position: sticky;padding: 12px 16px; top: 0px; left: 0; z-index: 999; background-color: white">
<div style="display: flex;background: #e4ecfe;padding: 20px">
<div style="width: 60px;">
<div class="home_title" v-if="info">
@@ -21,8 +21,7 @@
<div style="width: calc(100% - 60px);">
<div class="home_title" v-if="info">
<div class="left">
- <span class="m10">鏄电О锛歿{info.nickName }}</span>
- <span class="mr10 bluebtn" :title="'濮撳悕锛�'+(info.name||'鏈缃鍚�')" >({{(info.name||'鏈缃鍚�') }})</span>
+ <span class="m10">鏄电О锛歿{info.nickName }} <span class="ml10 bluebtn" :title="'濮撳悕锛�'+(info.name||'鏈缃鍚�')" >({{(info.name||'鏈缃鍚�') }})</span></span>
<el-tag type="primary" class="mr10 tag1">鍙戝崟鏂�</el-tag>
<el-tag type="success" class="mr10 tag1" v-if="info.workerIdentity == 2 || info.driverIdentity == 2 || info.chefIdentity == 2">鎺ュ崟鏂�</el-tag>
</div>
@@ -141,7 +140,7 @@
<span class="m10" v-if="item.type ==0">鐢ㄥ伐璁よ瘉</span>
<span class="m10" v-if="item.type ==1">璐ц繍璁よ瘉</span>
<span class="m10" v-if="item.type ==2">渚涢璁よ瘉</span>
- <el-tag type="primary" class="ml10 tag2" v-if="item.auditStatus == 1">璁よ瘉涓�</el-tag>
+ <el-tag type="primary" class="ml10 tag2" v-if="item.auditStatus == 1">鐢宠涓�</el-tag>
<el-tag type="success" class="ml10 tag2" v-if="item.auditStatus == 2">璁よ瘉閫氳繃</el-tag>
<el-tag type="danger" class="ml10 tag2" v-if="item.auditStatus == 3">璁よ瘉澶辫触</el-tag>
</div>
@@ -150,6 +149,7 @@
<span class="label"> 璁よ瘉绫诲瀷锛�</span> <span class="txt">{{item.authType == 0? '涓汉':'浼佷笟' }}</span>
<span class="label"> 鑱旂郴浜猴細</span> <span class="txt">{{item.linkName || '' }}</span>
<span class="label"> 鑱旂郴鏂瑰紡锛�</span> <span class="txt">{{item.telephone || '' }}</span>
+ <span class="label"> 鐢宠鏃堕棿锛�</span> <span class="txt">{{item.createTime || '' }}</span>
</div>
<template v-if="item.authType ==1">
<div class="line">
diff --git a/admin/src/views/business/identityInfo.vue b/admin/src/views/business/identityInfo.vue
index 04c95b3..ff07962 100644
--- a/admin/src/views/business/identityInfo.vue
+++ b/admin/src/views/business/identityInfo.vue
@@ -46,7 +46,13 @@
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55"></el-table-column>
-
+ <el-table-column prop="auditStatus" label="瀹℃牳鐘舵��" min-width="100px" fixed="left">
+ <template slot-scope="{row}">
+ <span class="bluestate" v-if="row.auditStatus ==1">鐢宠涓�</span>
+ <span class="greenstate" v-if="row.auditStatus ==2">宸查�氳繃</span>
+ <span class="redstate" v-if="row.auditStatus ==3">鏈�氳繃</span>
+ </template>
+ </el-table-column>
<el-table-column prop="openid" label="openid" min-width="100px"></el-table-column>
<el-table-column prop="memberName" label="浼氬憳鏄电О" min-width="100px"></el-table-column>
<el-table-column prop="type" label="绫诲瀷" min-width="100px">
@@ -54,13 +60,6 @@
<span v-if="row.type ==0">鐢ㄥ伐韬唤</span>
<span v-if="row.type ==1">璐ц繍韬唤</span>
<span v-if="row.type ==2">渚涢韬唤</span>
- </template>
- </el-table-column>
- <el-table-column prop="auditStatus" label="瀹℃牳鐘舵��" min-width="100px">
- <template slot-scope="{row}">
- <span class="bluestate" v-if="row.auditStatus ==1">鐢宠涓�</span>
- <span class="greenstate" v-if="row.auditStatus ==2">宸查�氳繃</span>
- <span class="redstate" v-if="row.auditStatus ==3">鏈�氳繃</span>
</template>
</el-table-column>
<el-table-column prop="authType" label="璁よ瘉绫诲瀷" min-width="100px">
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"
diff --git a/server/services/src/main/java/com/doumee/dao/business/model/IdentityInfo.java b/server/services/src/main/java/com/doumee/dao/business/model/IdentityInfo.java
index 7ea95d9..5cf29cc 100644
--- a/server/services/src/main/java/com/doumee/dao/business/model/IdentityInfo.java
+++ b/server/services/src/main/java/com/doumee/dao/business/model/IdentityInfo.java
@@ -37,7 +37,6 @@
@ApiModelProperty(value = "鍒涘缓鏃堕棿")
@ExcelColumn(name="鍒涘缓鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
private Date createTime;
@ApiModelProperty(value = "鏇存柊浜虹紪鐮�", example = "1")
@@ -46,7 +45,6 @@
@ApiModelProperty(value = "鏇存柊鏃堕棿")
@ExcelColumn(name="鏇存柊鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
private Date updateTime;
@ApiModelProperty(value = "澶囨敞")
@@ -111,7 +109,6 @@
@ApiModelProperty(value = "璁よ瘉瀹℃壒鏃堕棿")
@ExcelColumn(name="璁よ瘉瀹℃壒鏃堕棿")
- @JsonFormat(pattern = "yyyy-MM-dd")
private Date auditTime;
@ApiModelProperty(value = "璁よ瘉瀹℃壒澶囨敞")
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java
index 0961efe..5f6cd0b 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/IdentityInfoServiceImpl.java
@@ -286,7 +286,7 @@
queryWrapper.le(IdentityInfo::getUpdateTime, Utils.Date.getEnd(pageWrap.getModel().getUpdateTime()));
}
if (pageWrap.getModel().getRemark() != null) {
- queryWrapper.eq(IdentityInfo::getRemark, pageWrap.getModel().getRemark());
+ queryWrapper.like(IdentityInfo::getRemark, pageWrap.getModel().getRemark());
}
if (pageWrap.getModel().getType() != null) {
queryWrapper.eq(IdentityInfo::getType, pageWrap.getModel().getType());
@@ -298,16 +298,16 @@
queryWrapper.eq(IdentityInfo::getAuthType, pageWrap.getModel().getAuthType());
}
if (pageWrap.getModel().getLinkName() != null) {
- queryWrapper.eq(IdentityInfo::getLinkName, pageWrap.getModel().getLinkName());
+ queryWrapper.like(IdentityInfo::getLinkName, pageWrap.getModel().getLinkName());
}
if (pageWrap.getModel().getTelephone() != null) {
- queryWrapper.eq(IdentityInfo::getTelephone, pageWrap.getModel().getTelephone());
+ queryWrapper.like(IdentityInfo::getTelephone, pageWrap.getModel().getTelephone());
}
if (pageWrap.getModel().getLocation() != null) {
- queryWrapper.eq(IdentityInfo::getLocation, pageWrap.getModel().getLocation());
+ queryWrapper.like(IdentityInfo::getLocation, pageWrap.getModel().getLocation());
}
if (pageWrap.getModel().getCompanyName() != null) {
- queryWrapper.eq(IdentityInfo::getCompanyName, pageWrap.getModel().getCompanyName());
+ queryWrapper.like(IdentityInfo::getCompanyName, pageWrap.getModel().getCompanyName());
}
if (pageWrap.getModel().getLat() != null) {
queryWrapper.eq(IdentityInfo::getLat, pageWrap.getModel().getLat());
@@ -323,15 +323,10 @@
queryWrapper.le(IdentityInfo::getAuditTime, Utils.Date.getEnd(pageWrap.getModel().getAuditTime()));
}
if (pageWrap.getModel().getAuditRemark() != null) {
- queryWrapper.eq(IdentityInfo::getAuditRemark, pageWrap.getModel().getAuditRemark());
+ queryWrapper.like(IdentityInfo::getAuditRemark, pageWrap.getModel().getAuditRemark());
}
- for(PageWrap.SortData sortData: pageWrap.getSorts()) {
- if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
- queryWrapper.orderByDesc(sortData.getProperty());
- } else {
- queryWrapper.orderByAsc(sortData.getProperty());
- }
- }
+ queryWrapper.orderByAsc(IdentityInfo::getAuditStatus );
+ queryWrapper.orderByDesc(IdentityInfo::getCreateTime );
PageData<IdentityInfo> result = PageData.from(identityInfoMapper.selectJoinPage(page,IdentityInfo.class, queryWrapper));
if(result!=null && result.getRecords()!=null){
String path = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RESOURCE_PATH).getCode()
--
Gitblit v1.9.3