From f005177e0b3ce23ad9fbdc51de1d89f13b413176 Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Wed, 07 Jul 2021 14:19:37 +0800
Subject: [PATCH] 保安管理相关文件修改
---
src/views/management/credentials.vue | 35 +++
/dev/null | 22 --
vue.config.js | 2
public/index.html | 4
src/views/management/peopleDetails.vue | 303 +++++++++++++++++++++++++++++---
src/styles/management.scss | 39 ++++
src/api/management/peopleDetails.js | 131 ++++++++++++++
src/styles/common.scss | 4
8 files changed, 473 insertions(+), 67 deletions(-)
diff --git a/public/index.html b/public/index.html
index 764bccc..c42e0dc 100644
--- a/public/index.html
+++ b/public/index.html
@@ -95,10 +95,10 @@
初次加载资源可能需要较多时间 请耐心等待
</div>
</div>
- <div class="avue-home__footer">
+ <!-- <div class="avue-home__footer">
<a href="https://bladex.vip" target="_blank">
https://bladex.vip </a>
- </div>
+ </div> -->
</div>
</div>
<!-- built files will be auto injected -->
diff --git a/src/api/management/peopleDetails.js b/src/api/management/peopleDetails.js
new file mode 100644
index 0000000..fd10986
--- /dev/null
+++ b/src/api/management/peopleDetails.js
@@ -0,0 +1,131 @@
+import request from '@/router/axios';
+
+export const manifestationList = (securityid) => {
+ return request({
+ url: '/api/performance/list',
+ method: 'get',
+ params: {
+ securityid
+ }
+ })
+}
+
+export const dispatchList = (cardid) => {
+ return request({
+ url: '/api/dispatcher/list',
+ method: 'get',
+ params: {
+ cardid
+ }
+ })
+}
+
+
+
+
+
+export const remove = (ids) => {
+ return request({
+ url: '/api/blade-user/remove',
+ method: 'post',
+ params: {
+ ids,
+ }
+ })
+}
+
+export const add = (row) => {
+ return request({
+ url: '/api/blade-user/submit',
+ method: 'post',
+ data: row
+ })
+}
+
+export const update = (row) => {
+ return request({
+ url: '/api/blade-user/update',
+ method: 'post',
+ data: row
+ })
+}
+
+export const updatePlatform = (userId, userType, userExt) => {
+ return request({
+ url: '/api/blade-user/update-platform',
+ method: 'post',
+ params: {
+ userId,
+ userType,
+ userExt,
+ }
+ })
+}
+
+export const getUser = (id) => {
+ return request({
+ url: '/api/blade-user/detail',
+ method: 'get',
+ params: {
+ id,
+ }
+ })
+}
+
+export const getUserPlatform = (id) => {
+ return request({
+ url: '/api/blade-user/platform-detail',
+ method: 'get',
+ params: {
+ id,
+ }
+ })
+}
+
+export const getUserInfo = () => {
+ return request({
+ url: '/api/blade-user/info',
+ method: 'get',
+ })
+}
+
+export const resetPassword = (userIds) => {
+ return request({
+ url: '/api/blade-user/reset-password',
+ method: 'post',
+ params: {
+ userIds,
+ }
+ })
+}
+
+export const updatePassword = (oldPassword, newPassword, newPassword1) => {
+ return request({
+ url: '/api/blade-user/update-password',
+ method: 'post',
+ params: {
+ oldPassword,
+ newPassword,
+ newPassword1,
+ }
+ })
+}
+
+export const updateInfo = (row) => {
+ return request({
+ url: '/api/blade-user/update-info',
+ method: 'post',
+ data: row
+ })
+}
+
+export const grant = (userIds, roleIds) => {
+ return request({
+ url: '/api/blade-user/grant',
+ method: 'post',
+ params: {
+ userIds,
+ roleIds,
+ }
+ })
+}
diff --git a/src/styles/common.scss b/src/styles/common.scss
index 4507ae7..cb96b24 100644
--- a/src/styles/common.scss
+++ b/src/styles/common.scss
@@ -18,6 +18,8 @@
@import './media.scss';
//通用配置
@import './normalize.scss';
+//保安人员管理相关样式
+@import './management.scss';
a{
text-decoration: none;
@@ -27,4 +29,4 @@
outline: none;
}
//滚动条样式
-@include scrollBar;
\ No newline at end of file
+@include scrollBar;
diff --git a/src/styles/management.scss b/src/styles/management.scss
new file mode 100644
index 0000000..e22ef95
--- /dev/null
+++ b/src/styles/management.scss
@@ -0,0 +1,39 @@
+// 保安人员管理相关样式
+#avue-view {
+ & > .el-row {
+ position: absolute;
+ top: 40px;
+ left: 0px;
+ right: 0px;
+ bottom: 0px;
+ padding: 10px !important;
+
+ .el-col {
+ height: 100%;
+ .el-card {
+ position: relative;
+ height: 100%;
+ .card-body {
+ position: absolute;
+ top: 0;
+ left: 0;
+ right: 0;
+ bottom: 0;
+ margin: 0;
+ padding: 20px;
+ height: calc(100% - 40px) !important;
+ }
+ }
+ }
+ }
+}
+
+.card-body {
+ .el-tabs {
+ height: 100%;
+
+ .el-tabs__content {
+ height: calc(100% - 55px) !important;
+ }
+ }
+}
diff --git a/src/views/management/credentials.vue b/src/views/management/credentials.vue
index 07f0cd1..c046b48 100644
--- a/src/views/management/credentials.vue
+++ b/src/views/management/credentials.vue
@@ -2,21 +2,44 @@
* @Author: Morpheus
* @Date: 2021-07-05 16:31:54
* @Last Modified by: Morpheus
- * @Last Modified time: 2021-07-05 16:44:19
+ * @Last Modified time: 2021-07-07 11:31:50
* menu-name 保安员证件吊销
*/
+
<template>
- <div>
- 保安员证件吊销
- </div>
+ <el-row>
+ <el-col :span="24">
+ <el-card>
+ <div class="card-body">
+
+ </div>
+ </el-card>
+ </el-col>
+ </el-row>
</template>
<script>
-export default {
+export default {
+ data () {
+ return {
+
+ }
+ },
+ created () {
+
+
+
+ },
+ mounted () {
+
+ },
+ methods: {
+
+ }
}
</script>
-<style>
+<style lang="scss" scoped>
</style>
diff --git a/src/views/management/expression.vue b/src/views/management/expression.vue
deleted file mode 100644
index 4535ebb..0000000
--- a/src/views/management/expression.vue
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * @Author: Morpheus
- * @Date: 2021-07-05 16:31:54
- * @Last Modified by: Morpheus
- * @Last Modified time: 2021-07-05 16:40:11
- * menu-name 保安员现实表现
- */
-<template>
- <div>
- 保安员现实表现
- </div>
-</template>
-
-<script>
-export default {
-
-}
-</script>
-
-<style>
-
-</style>
diff --git a/src/views/management/honor.vue b/src/views/management/honor.vue
deleted file mode 100644
index 90f7735..0000000
--- a/src/views/management/honor.vue
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * @Author: Morpheus
- * @Date: 2021-07-05 16:31:54
- * @Last Modified by: Morpheus
- * @Last Modified time: 2021-07-05 16:40:11
- * menu-name 保安员荣誉录入
- */
-<template>
- <div>
- 保安员荣誉录入
- </div>
-</template>
-
-<script>
-export default {
-
-}
-</script>
-
-<style>
-
-</style>
diff --git a/src/views/management/peopleDetails.vue b/src/views/management/peopleDetails.vue
index b82bb6e..a10f2c9 100644
--- a/src/views/management/peopleDetails.vue
+++ b/src/views/management/peopleDetails.vue
@@ -2,70 +2,303 @@
* @Author: Morpheus
* @Date: 2021-07-05 16:31:54
* @Last Modified by: Morpheus
- * @Last Modified time: 2021-07-06 19:10:13
+ * @Last Modified time: 2021-07-07 11:31:26
* menu-name 保安详细资料
*/
<template>
<el-row>
<el-col :span="24">
<el-card>
- <el-tabs v-model="activeName"
- @tab-click="handleClick">
- <el-tab-pane label="基本信息"
- name="first">基本信息</el-tab-pane>
- <el-tab-pane label="人员表现"
- name="second">人员表现</el-tab-pane>
- <el-tab-pane label="角色管理"
- name="third">角色管理</el-tab-pane>
- <el-tab-pane label="相关荣誉"
- name="fourth">相关荣誉</el-tab-pane>
- </el-tabs>
+ <div class="card-body">
+ <el-tabs v-model="activeName"
+ @tab-click="handleClick">
+ <el-tab-pane label="基本信息"
+ name="first">
+
+ <el-form :model="form"
+ label-position="right"
+ size="mini"
+ label-width="100px">
+
+ <el-row>
+ <el-col span="12">
+ <el-form-item label="姓名">
+ <el-input disabled="true"
+ v-model="form.realName"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+ <el-form-item label="性别">
+ <el-input disabled="true"
+ :value="form.sex == 1 ? '男' : '女'"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col span="12">
+ <el-col span="12">
+ <el-form-item label="电子邮箱">
+ <el-input disabled="true"
+ v-model="form.emails"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+
+ </el-col>
+ <el-col span="12">
+ <el-form-item label="联系方式">
+ <el-input disabled="true"
+ v-model="form.phone"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+
+ <el-row>
+ <el-col span="12">
+ <el-form-item label="身高">
+ <el-input disabled="true"
+ v-model="form.height"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+ <el-form-item label="联系地址">
+ <el-input disabled="true"
+ v-model="form.address"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+
+ <el-col span="12">
+ <el-form-item label="籍贯">
+ <el-input disabled="true"
+ v-model="form.nativePlace"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+ <el-form-item label="户口所在地">
+ <el-input disabled="true"
+ v-model="form.registered"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+
+ </el-row>
+
+ <el-row>
+ <el-col span="12">
+ <el-form-item label="政治面貌">
+ <el-input disabled="true"
+ v-model="form.politicaloutlook"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+
+ <el-form-item label="身份证号">
+ <el-input disabled="true"
+ v-model="form.cardid"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+
+ </el-row>
+
+ <el-row>
+ <el-col span="12">
+
+ <el-form-item label="所属角色">
+ <el-input disabled="true"
+ v-model="form.roleName"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+ <el-form-item label="所属公司">
+ <el-input disabled="true"
+ v-model="form.deptName"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+
+ <el-row>
+ <el-col span="12">
+ <el-form-item label="入职时间">
+ <el-input disabled="true"
+ v-model="form.rtime"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col span="12">
+ <el-form-item label="是否在职">
+ <el-input disabled="true"
+ :value="form.sex == 1 ? '是' : '否'"
+ autocomplete="off"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+
+ </el-form>
+
+ </el-tab-pane>
+ <el-tab-pane label="人员表现"
+ name="second">
+ <el-table :data="manifestationData"
+ style="width: 100%">
+
+ <el-table-column prop="name"
+ label="姓名"
+ align="center">
+ </el-table-column>
+
+ <el-table-column prop="securityid"
+ label="身份证号"
+ align="center">
+ </el-table-column>
+
+ <el-table-column prop="workingattitude"
+ align="center"
+ label="工作态度">
+ </el-table-column>
+
+ <el-table-column prop="workingability"
+ align="center"
+ label="工作能力">
+ </el-table-column>
+
+ <el-table-column prop="achievements"
+ align="center"
+ label="工作成效">
+ </el-table-column>
+
+ <el-table-column prop="score"
+ align="center"
+ label="评分">
+ </el-table-column>
+
+ <el-table-column prop="time"
+ align="center"
+ label="时间">
+ </el-table-column>
+
+ </el-table>
+ </el-tab-pane>
+ <el-tab-pane label="派遣记录"
+ name="third">
+ <el-table :data="dispatchData"
+ style="width: 100%">
+
+ <el-table-column prop="name"
+ label="姓名"
+ align="center">
+ </el-table-column>
+
+ <el-table-column prop="cardid"
+ label="身份证号"
+ align="center">
+ </el-table-column>
+
+ <el-table-column prop="dispatcher"
+ align="center"
+ label="派遣人">
+ </el-table-column>
+
+ <el-table-column prop="dispatchertime"
+ align="center"
+ label="派遣时间">
+ </el-table-column>
+
+ <el-table-column prop="dispatcheraddress"
+ align="center"
+ label="派遣地址">
+ </el-table-column>
+
+ </el-table>
+ </el-tab-pane>
+ <el-tab-pane label="相关荣誉"
+ name="fourth">相关荣誉</el-tab-pane>
+ </el-tabs>
+ </div>
+
</el-card>
</el-col>
</el-row>
</template>
<script>
+import {
+ manifestationList,
+ dispatchList
+} from "@/api/management/peopleDetails";
+
+
export default {
data () {
return {
- activeName: 'second'
+ activeName: 'first',
+ form: {},
+ manifestationData: [],
+ dispatchData: [],
}
},
created () {
- this.$store.state.tags.tagList.forEach((item, index) => {
- if (item.label == "保安详细资料") {
- this.$store.state.tags.tagList.splice(index, 1)
- return;
- }
- })
+ this.$store.state.tags.tagList.forEach((item, index) => {
+ if (item.label == "保安详细资料") {
+ this.$store.state.tags.tagList.splice(index, 1)
+ return;
+ }
+ })
+ this.form = this.$route.query;
+
+ },
+ mounted () {
+
+ console.log(this.$store.state.tags.tag.label)
this.$store.state.tags.tag.label = '保安详细资料'
+ console.log(this.$store.state.tags.tag.label)
+
},
methods: {
- handleClick (tab, event) {
- console.log(tab, event);
+ handleClick (tab) {
+ if (tab.index == 1) {
+ this.getManifestationData()
+ } else if (tab.index == 2) {
+ this.getDispatchData()
+ } else if (tab.index == 3) {
+ console.log(1)
+ }
+ },
+ getManifestationData () {
+ // manifestationList(this.form.cardid).then(res => {
+ manifestationList('360882199604251516').then(res => {
+ this.manifestationData = res.data.data.records
+ this.manifestationData.forEach(item => {
+ item.name = this.form.realName
+ item.time = item.time.substring(0, 10)
+ })
+ })
+ },
+ getDispatchData () {
+ dispatchList('360882199604251516').then(res => {
+
+ this.dispatchData = res.data.data.records
+
+ })
}
}
}
</script>
<style lang="scss" scoped>
-.el-row {
- position: absolute;
- top: 40px;
- left: 0px;
- right: 0px;
- bottom: 0px;
- padding: 10px !important;
- .el-col {
- height: 100%;
- .el-card {
- height: 100%;
- }
- }
-}
</style>
diff --git a/vue.config.js b/vue.config.js
index 893b09a..b15df2a 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -26,7 +26,7 @@
proxy: {
'/api': {
//本地服务接口地址
- target: 'http://2h3f861221.wicp.vip',
+ target: 'http://192.168.0.104',
//远程演示服务地址,可用于直接启动项目
//target: 'https://saber.bladex.vip/api',
ws: true,
--
Gitblit v1.9.3