|
|
@@ -4,6 +4,7 @@ namespace bizGhs\admin\classes;
|
|
|
|
|
|
use biz\user\classes\UserClass;
|
|
|
use bizGhs\shop\classes\ShopAdminClass;
|
|
|
+use bizTy\shop\classes\ShopClass;
|
|
|
use common\components\util;
|
|
|
use common\services\ImageService;
|
|
|
use Yii;
|
|
|
@@ -11,16 +12,16 @@ use bizGhs\base\classes\BaseClass;
|
|
|
|
|
|
class AdminClass extends BaseClass
|
|
|
{
|
|
|
-
|
|
|
+
|
|
|
public static $baseFile = '\bizGhs\admin\models\Admin';
|
|
|
-
|
|
|
+
|
|
|
//未知身份
|
|
|
CONST IDENTITY_UNKNOWN = 0;
|
|
|
//客户,花店
|
|
|
const IDENTITY_CUSTOM = 1;
|
|
|
//供货商员工
|
|
|
const IDENTITY_STAFF = 2;
|
|
|
-
|
|
|
+
|
|
|
//组合员工基本信息 shish 2019.12.9
|
|
|
public static function groupAdminBaseInfo($list, $sensitive = true)
|
|
|
{
|
|
|
@@ -43,7 +44,7 @@ class AdminClass extends BaseClass
|
|
|
}
|
|
|
return $list;
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
//取单个员工详情 shish 2019.12.9
|
|
|
public static function getAdminById($id)
|
|
|
{
|
|
|
@@ -54,7 +55,7 @@ class AdminClass extends BaseClass
|
|
|
$list = self::groupAdminBaseInfo([$detail]);
|
|
|
return current($list);
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
//取多个员工信息 shish 2021.1.19
|
|
|
public static function getAdminByIds($ids)
|
|
|
{
|
|
|
@@ -65,17 +66,17 @@ class AdminClass extends BaseClass
|
|
|
$adminList = self::groupAdminBaseInfo($adminList);
|
|
|
return $adminList;
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
//添加员工 shish 2019.12.9
|
|
|
public static function addAdmin($data)
|
|
|
{
|
|
|
$merchantId = $data['merchantId'];
|
|
|
-
|
|
|
+
|
|
|
//验证角色
|
|
|
$roleId = $data['roleId'];
|
|
|
$role = AdminRoleClass::getById($roleId);
|
|
|
AdminRoleClass::valid($role, $merchantId);
|
|
|
-
|
|
|
+
|
|
|
//验证关联的微信
|
|
|
$adminId = $data['admin'];
|
|
|
$admin = self::getById($adminId);
|
|
|
@@ -86,27 +87,27 @@ class AdminClass extends BaseClass
|
|
|
$respond = self::add($data);
|
|
|
return $respond;
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
//获取商家的所有员工 shish 2019.12.9
|
|
|
public static function getAdminList($merchantId)
|
|
|
{
|
|
|
return self::getAllByCondition(['merchantId' => $merchantId, 'delStatus' => 0, 'status' => 1], null, '*');
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
//获取商家所有员工的名字 shish 2019.12.9
|
|
|
public static function getAdminNameList($merchantId)
|
|
|
{
|
|
|
$list = self::getAdminList($merchantId);
|
|
|
return !empty($list) ? array_column($list, 'adminName') : [];
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
//获取商家所有员工已经关联微信的userId
|
|
|
public static function getShopAdminUserId($merchantId)
|
|
|
{
|
|
|
$list = self::getAdminList($merchantId);
|
|
|
return !empty($list) ? array_column($list, 'userId') : [];
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
//验证权限
|
|
|
public static function valid($admin, $merchantId)
|
|
|
{
|
|
|
@@ -119,7 +120,7 @@ class AdminClass extends BaseClass
|
|
|
util::fail('您没有权限操作');
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
//删除员工,需要考虑权限 shish 2019.12.9
|
|
|
public static function deleteAdmin($admin, $adminId)
|
|
|
{
|
|
|
@@ -132,17 +133,17 @@ class AdminClass extends BaseClass
|
|
|
}
|
|
|
self::updateById($id, ['delStatus' => 1]);
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
public static function getByMiniOpenId($miniOpenId)
|
|
|
{
|
|
|
return self::getByCondition(['miniOpenId' => $miniOpenId]);
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
public static function getByUnionId($unionId)
|
|
|
{
|
|
|
return self::getByCondition(['unionId' => $unionId]);
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
//创建以及更新用户 shish 2020.2.7
|
|
|
public static function replaceAdmin($adminInfo, $source)
|
|
|
{
|
|
|
@@ -190,7 +191,7 @@ class AdminClass extends BaseClass
|
|
|
}
|
|
|
return $admin;
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
//更新员工信息 shish 2020.5.30
|
|
|
public static function updateAdmin($originalAdmin, $getAdminInfo)
|
|
|
{
|
|
|
@@ -229,7 +230,7 @@ class AdminClass extends BaseClass
|
|
|
if (isset($getAdminInfo['headImgUrl']) && !empty($getAdminInfo['headImgUrl'])) {
|
|
|
$data['isFull'] = 1;
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
//更新头像
|
|
|
$merchantId = 0;
|
|
|
if (isset($originalAdmin['avatar']) == false || empty($originalAdmin['avatar'])) {
|
|
|
@@ -241,12 +242,12 @@ class AdminClass extends BaseClass
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
self::updateById($adminId, $data);
|
|
|
$admin = self::getById($adminId);
|
|
|
return $admin;
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
public static function generateAdmin($getAdminInfo)
|
|
|
{
|
|
|
$time = time();
|
|
|
@@ -263,7 +264,7 @@ class AdminClass extends BaseClass
|
|
|
$getAdminInfo['addTime'] = $time;
|
|
|
$getAdminInfo['source'] = isset($getAdminInfo['source']) ? $getAdminInfo['source'] : 0;
|
|
|
$getAdminInfo['hasSubscribe'] = 0;
|
|
|
-
|
|
|
+
|
|
|
if (isset($getAdminInfo['headImgUrl']) && !empty($getAdminInfo['headImgUrl'])) {
|
|
|
$imgUrl = $getAdminInfo['headImgUrl'];
|
|
|
$name = ImageService::generateAvatar(0, $imgUrl);
|
|
|
@@ -271,7 +272,7 @@ class AdminClass extends BaseClass
|
|
|
$getAdminInfo['avatar'] = $name;
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
$admin = self::add($getAdminInfo);
|
|
|
$adminId = $admin['id'];
|
|
|
if (empty($nickName)) {
|
|
|
@@ -279,36 +280,36 @@ class AdminClass extends BaseClass
|
|
|
}
|
|
|
return $admin;
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
//合并管理员
|
|
|
public static function mergeAdmin($delAdmin, $retainAdmin)
|
|
|
{
|
|
|
$connection = Yii::$app->db;//事务处理
|
|
|
$transaction = $connection->beginTransaction();
|
|
|
try {
|
|
|
-
|
|
|
+
|
|
|
$delAdminId = $delAdmin['id'];
|
|
|
$clearData = ['openId' => '', 'miniOpenId' => '', 'unionId' => ''];
|
|
|
self::updateById($delAdminId, $clearData);
|
|
|
-
|
|
|
+
|
|
|
$transaction->commit();
|
|
|
} catch (Exception $e) {
|
|
|
$transaction->rollBack();
|
|
|
return [];
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
//找出相同unionId的用户
|
|
|
public static function getSameUnionId($unionId)
|
|
|
{
|
|
|
return self::getAllByCondition(['unionId' => $unionId], 'addTime desc', '*');
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
public static function getByOpenId($openId)
|
|
|
{
|
|
|
return self::getByCondition(['openId' => $openId]);
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
//将微信和小程序获取的用户信息转成可以保存的用户信息
|
|
|
public static function switchAdminInfo($info, $source)
|
|
|
{
|
|
|
@@ -356,17 +357,32 @@ class AdminClass extends BaseClass
|
|
|
}
|
|
|
return $info;
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
//取消关注 shish 2020.4.19
|
|
|
public static function unFocus($adminId)
|
|
|
{
|
|
|
self::updateById($adminId, ['subscribe' => 0, 'hasSubscribe' => 1]);
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
//切换门店 linqh 2021.1.31
|
|
|
- public static function toggleShop($adminId,$shopId)
|
|
|
- {
|
|
|
- return self::updateById($adminId,['currentShopId'=>$shopId]);
|
|
|
- }
|
|
|
+ public static function toggleShop($admin, $toggleShopId, $sjId)
|
|
|
+ {
|
|
|
+ if ($admin['super'] != 1) {
|
|
|
+ util::fail("您没有权限");
|
|
|
+ }
|
|
|
+ $adminId = $admin['id'];
|
|
|
+ $currentShopId = $admin['currentShopId'] ?? 0;
|
|
|
+ $sjShopList = ShopClass::getSjShopList($sjId);
|
|
|
+ $sjShopIds = array_column($sjShopList, 'id');
|
|
|
+ if (in_array($toggleShopId, $sjShopIds) == false) {
|
|
|
+ util::fail('不是您的门店');
|
|
|
+ }
|
|
|
+ $shopAdmin = ShopAdminClass::getByCondition(['shopId' => $toggleShopId, 'adminId' => $adminId, 'delStatus' => 0]);
|
|
|
+ if (empty($shopAdmin)) {
|
|
|
+ util::fail('您没有权限哦');
|
|
|
+ }
|
|
|
+ self::updateById($adminId, ['currentShopId' => $toggleShopId]);
|
|
|
+ return $shopAdmin;
|
|
|
+ }
|
|
|
|
|
|
-}
|
|
|
+}
|