From 2ae60f81bbef5b2de4a9cc3e90bbedf19e8e4446 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期四, 07 三月 2024 10:24:00 +0800
Subject: [PATCH] mrshi
---
admin/src/views/business/internalMember.vue | 128 +++++++++++++++++++++++++++++++-----------
1 files changed, 95 insertions(+), 33 deletions(-)
diff --git a/admin/src/views/business/internalMember.vue b/admin/src/views/business/internalMember.vue
index 309695a..21cc600 100644
--- a/admin/src/views/business/internalMember.vue
+++ b/admin/src/views/business/internalMember.vue
@@ -5,8 +5,8 @@
<el-form-item label="" prop="keyword">
<el-input v-model="searchForm.keyword" placeholder="璇疯緭鍏ュ鍚�/鎵嬫満鍙�/宸ュ彿" @keypress.enter.native="search"></el-input>
</el-form-item>
- <el-form-item label="" prop="status">
- <el-select v-model="searchForm.status" @keypress.enter.native="search" placeholder="鏄惁鏈変汉鑴�">
+ <el-form-item label="" prop="hasFace">
+ <el-select v-model="searchForm.hasFace" @keypress.enter.native="search" placeholder="鏄惁鏈変汉鑴�">
<el-option label="鏃�" value="0"></el-option>
<el-option label="鏈�" value="1"></el-option>
</el-select>
@@ -24,6 +24,13 @@
<el-option label="鎷夐粦/鍐荤粨" value="2"></el-option>
</el-select>
</el-form-item>
+ <el-form-item label="" prop="hkStatus">
+ <el-select v-model="searchForm.hkStatus" @keypress.enter.native="search" placeholder="娴峰悍鍚屾鐘舵��">
+ <el-option label="寰呭悓姝�" value="0"></el-option>
+ <el-option label="鍚屾鎴愬姛" value="1"></el-option>
+ <el-option label="鍚屾澶辫触" value="2"></el-option>
+ </el-select>
+ </el-form-item>
<section>
<el-button type="primary" @click="search">鎼滅储</el-button>
<el-button @click="reset">閲嶇疆</el-button>
@@ -31,13 +38,15 @@
</el-form>
<template v-slot:menu>
<div style="width: 100%; height: 50px; background: rgba(242, 242, 242, 1); line-height: 50px; text-align: center; font-size: 14px;">浼佷笟缁勭粐鏋舵瀯</div>
- <Tree :list="companyTree" :defaultProps="{name: 'name', status: 'status', children: 'companyDTOList', id: 'id'}" @callback="callback" />
+ <div style="width: 100%; height: calc(100vh - 170px); overflow-y: scroll;">
+ <Tree :list="companyTree" :defaultProps="{name: 'name', status: 'status', children: 'childList', id: 'erpId'}" @callback="callback" />
+ </div>
</template>
<!-- 琛ㄦ牸鍜屽垎椤� -->
<template v-slot:table-wrap>
- <ul class="toolbar" v-permissions="['business:member:delete']">
- <li><el-button type="primary">闂ㄧ鎺堟潈</el-button></li>
- <li><el-button type="primary">鍚屾</el-button></li>
+ <ul class="toolbar" v-permissions="['business:member:delete','business:member:sync']">
+<!-- <li><el-button type="primary">闂ㄧ鎺堟潈</el-button></li>-->
+ <li><el-button type="primary" v-permissions="['business:member:sync']" :loading="loading" @click="synchronous()">鍚屾</el-button></li>
<li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:member:delete']">鍒犻櫎</el-button></li>
</ul>
<el-table
@@ -49,20 +58,55 @@
<el-table-column type="selection" width="55"></el-table-column>
<el-table-column prop="name" label="濮撳悕" min-width="100px"></el-table-column>
<el-table-column prop="phone" label="鎵嬫満鍙�" min-width="100px"></el-table-column>
- <el-table-column prop="sex" label="鎬у埆" min-width="100px"></el-table-column>
+ <el-table-column label="鎬у埆" min-width="100px">
+ <template slot-scope="{row}">
+ <span v-if="row.sex == 1">鐢�</span>
+ <span v-if="row.sex == 2">濂�</span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="companyName" label="鎵�灞為儴闂�" min-width="100px"></el-table-column>
<el-table-column prop="status" label="鐘舵��" min-width="100px">
<template slot-scope="{row}">
- <span v-if="row.status === 0">姝e父</span>
- <span v-if="row.status === 1">绂佺敤</span>
- <span v-if="row.status === 2">鎷夐粦/鍐荤粨</span>
+ <span v-if="row.status == 0" style="color: green">姝e父</span>
+ <span v-if="row.status == 1" style="color: red">绂佺敤</span>
+ <span v-if="row.status == 2" style="color: red">鎷夐粦/鍐荤粨</span>
</template>
</el-table-column>
<el-table-column prop="code" label="宸ュ彿" min-width="100px"></el-table-column>
- <el-table-column prop="code" label="閮ㄩ棬" min-width="100px"></el-table-column>
- <el-table-column prop="code" label="鍙嫓璁�" min-width="100px"></el-table-column>
- <el-table-column prop="roleId" label="闂ㄧ瑙掕壊" min-width="100px"></el-table-column>
- <el-table-column fixed="right" prop="faceImg" label="浜鸿劯淇℃伅" min-width="100px"></el-table-column>
- <el-table-column fixed="right" prop="faceImg" label="鍗$墖淇℃伅" min-width="100px"></el-table-column>
+ <el-table-column label="鍙嫓璁�" min-width="100px">
+ <template slot-scope="{row}">
+ <span v-if="row.canVisit != 1">鍚�</span>
+ <span v-if="row.canVisit == 1">鏄�</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="娴峰悍鍚屾鐘舵��" min-width="100px">
+ <template slot-scope="{row}">
+ <span v-if="row.hkStatus == 0" style="color: #435EBE">寰呭悓姝�</span>
+ <span v-if="row.hkStatus == 1" style="color: green">鍚屾鎴愬姛</span>
+ <span v-if="row.hkStatus == 2" style="color: red">鍚屾澶辫触</span>
+ <span v-if="row.hkStatus == 3" style="color: red">涓嶇鍚堜笅鍙戞潯浠�</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="闂ㄧ瑙掕壊" min-width="100px">
+ <template slot-scope="{row}">
+ <span>{{row.roleNames.join(',')}}</span>
+ </template>
+ </el-table-column>
+ <el-table-column fixed="right" label="浜鸿劯淇℃伅" min-width="100px">
+ <template slot-scope="{row}">
+ <el-image
+ v-if="row.faceImg"
+ style="width: 60px; height: 60px"
+ :src="row.faceImg"
+ :preview-src-list="[row.faceImg]">
+ </el-image>
+ </template>
+ </el-table-column>
+ <el-table-column fixed="right" label="鍗$墖淇℃伅" min-width="100px">
+ <template slot-scope="{row}">
+ <el-button @click="$refs.cardOpeningRecord.open('寮�鍗¤褰�', row.id)" type="text">{{row.memberCardCount || '0'}}</el-button>
+ </template>
+ </el-table-column>
<!-- <el-table-column-->
<!-- v-if="containPermissions(['business:member:update', 'business:member:delete'])"-->
<!-- label="鎿嶄綔"-->
@@ -81,6 +125,8 @@
:pagination="tableData.pagination"
>
</pagination>
+ <!-- 鏌ョ湅浜哄憳寮�鍗¤褰� -->
+ <cardOpeningRecord ref="cardOpeningRecord" @success="handlePageChange" />
</template>
</TableLayout1>
</template>
@@ -89,35 +135,30 @@
import BaseTable from '@/components/base/BaseTable'
import TableLayout1 from '@/layouts/TableLayout1'
import Pagination from '@/components/common/Pagination'
+import cardOpeningRecord from '@/components/business/cardOpeningRecord'
import Tree from '@/components/common/Tree'
-import { findCompanyTreePage } from '@/api/business/company'
+import { fetchList } from '@/api/business/company'
+import { memberSync } from '@/api/business/member'
export default {
name: 'internalMember',
extends: BaseTable,
- components: { TableLayout1, Pagination, Tree },
+ components: { TableLayout1, Pagination, Tree, cardOpeningRecord },
data () {
return {
- TreeList: [
- {
- name: '鍗庢櫒',
- status: '',
- id: 1,
- children: [
- { name: '琛屾斂閮�', status: '', id: 2 },
- { name: '淇℃伅閮�', status: '', id: 3 },
- { name: '椤圭洰閮�', status: '', id: 4 }
- ]
- }
- ],
+ TreeList: [],
// 鎼滅储
searchForm: {
name: '',
status: '',
+ hkStatus: '',
canVisit: '',
- companyId: '',
keyword: '',
- type: 2
+ type: 2,
+ erpOrgId: '',
+ companyId: '',
+ hasFace: ''
},
+ loading:false,
companyTree: []
}
},
@@ -134,14 +175,35 @@
methods: {
// 鑾峰彇缁勭粐鏍�
getfindCompanyTreePage () {
- findCompanyTreePage(1)
+ fetchList(1)
.then(res => {
+ res[0].fsStatus = 1
this.companyTree = res
- this.searchForm.companyId = res[0].id
+ // this.searchForm.erpOrgId = res[0].erpId
this.search()
})
},
+ // 鍚屾淇℃伅
+ async synchronous () {
+ this.$dialog.actionConfirm('鎿嶄綔纭鎻愰啋', '鎮ㄧ‘璁ゅ悓姝ュ叏閮ㄤ俊鎭悧锛�')
+ .then(() => {
+ this.loading = true
+ memberSync({})
+ .then(res => {
+ this.$tip.apiSuccess(res || '鍚屾鎴愬姛')
+ this.search()
+ })
+ .catch(e => {
+ this.$tip.apiFailed(e)
+ })
+ .finally(() => {
+ this.loading = false
+ })
+ })
+ .catch(() => {})
+ },
callback (row) {
+ this.searchForm.erpOrgId = row.erpId
this.searchForm.companyId = row.id
this.search()
}
--
Gitblit v1.9.3