diff --git a/app/Http/Controllers/Api/UsersController.php b/app/Http/Controllers/Api/UsersController.php
index f7df20053..44e5e6891 100755
--- a/app/Http/Controllers/Api/UsersController.php
+++ b/app/Http/Controllers/Api/UsersController.php
@@ -361,7 +361,7 @@ class UsersController extends AbstractController
*/
public function search()
{
- $builder = User::select(['userid', 'email', 'nickname', 'profession', 'userimg', 'az']);
+ $builder = User::select(['userid', 'email', 'nickname', 'profession', 'userimg', 'az', 'line_at', 'disable_at']);
//
$keys = Request::input('keys');
$sorts = Request::input('sorts');
diff --git a/app/Models/User.php b/app/Models/User.php
index ee351dda2..703a99e74 100644
--- a/app/Models/User.php
+++ b/app/Models/User.php
@@ -419,7 +419,7 @@ class User extends AbstractModel
if (isset($_A["__static_userid2basic_" . $userid])) {
return $_A["__static_userid2basic_" . $userid];
}
- $fields = ['userid', 'email', 'nickname', 'profession', 'userimg', 'line_at'];
+ $fields = ['userid', 'email', 'nickname', 'profession', 'userimg', 'az', 'line_at', 'disable_at'];
$userInfo = self::whereUserid($userid)->select($fields)->first();
if ($userInfo) {
$userInfo->online = $userInfo->getOnlineStatus();
diff --git a/resources/assets/js/components/UserAvatar.vue b/resources/assets/js/components/UserAvatar.vue
index 039dea336..cae8875c5 100755
--- a/resources/assets/js/components/UserAvatar.vue
+++ b/resources/assets/js/components/UserAvatar.vue
@@ -14,7 +14,7 @@
-
+
{{nickname}}
@@ -23,7 +23,10 @@
{{nickname}}
-
{{user.nickname}}
+
+ {{user.nickname}}
+ {{$L('离职')}}
+
@@ -109,6 +112,14 @@
computed: {
...mapState(['userInfo', 'userOnline', 'cacheUserBasic']),
+ boxClass() {
+ return {
+ 'avatar-box': true,
+ 'online': this.userId === this.userid || this.user.online,
+ 'disable': this.user.disable_at
+ }
+ },
+
boxStyle() {
const style = {};
const {borderWitdh, borderColor} = this
diff --git a/resources/assets/sass/components/user-avatar.scss b/resources/assets/sass/components/user-avatar.scss
index d43a30993..f7a7bddc7 100755
--- a/resources/assets/sass/components/user-avatar.scss
+++ b/resources/assets/sass/components/user-avatar.scss
@@ -41,6 +41,19 @@
background-color: $primary-color;
}
}
+ &.disable {
+ &:after {
+ content: "";
+ position: absolute;
+ top: 0;
+ left: 0;
+ right: 0;
+ bottom: 0;
+ background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGNsYXNzPSJpb25pY29uIiB2aWV3Qm94PSIwIDAgNTEyIDUxMiI+PHRpdGxlPkJhbjwvdGl0bGU+PGNpcmNsZSBmaWxsPSJub25lIiBzdHJva2U9IiNFRDQwMTQiIHN0cm9rZS1taXRlcmxpbWl0PSIxMCIgc3Ryb2tlLXdpZHRoPSI0OCIgY3g9IjI1NiIgY3k9IjI1NiIgcj0iMjAwIi8+PHBhdGggc3Ryb2tlPSIjRUQ0MDE0IiBzdHJva2UtbWl0ZXJsaW1pdD0iMTAiIHN0cm9rZS13aWR0aD0iNDgiIGQ9Ik0xMTQuNTggMTE0LjU4bDI4Mi44NCAyODIuODQiLz48L3N2Zz4=");
+ background-color: rgba(237, 64, 20, 0.2);
+ border-radius: 50%;
+ }
+ }
}
.avatar-name {
padding-left: 6px;
@@ -48,6 +61,19 @@
text-overflow: ellipsis;
white-space: nowrap;
}
+ .avatar-disable {
+ margin-left: 2px;
+ white-space: nowrap;
+ font-size: 12px;
+ height: 20px;
+ line-height: 20px;
+ padding: 0 6px;
+ border-radius: 3px;
+ transform: scale(0.9);
+ transform-origin: right center;
+ color: #ffffff;
+ background-color: #ED4014;
+ }
}
}
.common-avatar-transfer {