Browse Source

密码留空不修改密码

shish 6 years ago
parent
commit
daf9f246b5

+ 5 - 3
app/business/controllers/AdminController.php

@@ -55,8 +55,10 @@ class AdminController extends BaseController
 	public function actionUpdate()
 	{
 		$post = Yii::$app->request->post();
-		$admin = AdminService::addAdmin($post);
-		$id = $admin['id'];
+		$id = isset($post['id']) && is_numeric($post['id']) ? $post['id'] : 0;
+		unset($post['id']);
+		$originalAdmin = AdminService::getById($id);
+		$admin = AdminService::updateAdmin($originalAdmin, $post);
 		$info = AdminService::getDetail($id);
 		util::success($info);
 	}
@@ -66,7 +68,7 @@ class AdminController extends BaseController
 	{
 		$id = Yii::$app->request->get('id');
 		$admin = AdminService::getDetail($id);
-		AdminClass::valid($admin, $this->merchantId);
+		AdminService::valid($admin, $this->merchantId);
 		util::success($admin);
 	}
 	

+ 23 - 0
app/business/controllers/AdminRoleController.php

@@ -0,0 +1,23 @@
+<?php
+
+namespace business\controllers;
+
+use biz\admin\classes\AdminClass;
+use biz\admin\services\AdminRoleService;
+use biz\admin\services\AdminService;
+use common\components\jwt;
+use common\components\util;
+use Yii;
+use yii\web\Controller;
+
+class AdminRoleController extends BaseController
+{
+
+	//角色列表 shish 2019.12.9
+	public function actionList()
+	{
+		$list = AdminRoleService::getRoleList($this->merchantId);
+		util::success($list);
+	}
+
+}

+ 8 - 10
app/business/controllers/UserController.php

@@ -18,7 +18,7 @@ use common\components\util;
 
 class UserController extends BaseController
 {
-
+	
 	//客户列表 shish 2019.11.30
 	public function actionList()
 	{
@@ -65,12 +65,10 @@ class UserController extends BaseController
 	{
 		$userId = Yii::$app->request->get('userId');
 		$info = UserService::getFullUserInfo($userId);
-		if (isset($info['merchantId']) == false || $this->merchantId != $info['merchantId']) {
-			util::fail('没有权限');
-		}
+		UserService::valid($info, $this->merchantId);
 		util::success($info);
 	}
-	
+
 	//添加客户,申请会员时会自动同步资产 shish 2019.11.30
 	public function actionAdd()
 	{
@@ -153,24 +151,24 @@ class UserController extends BaseController
 		if ($user['merchantId'] != $this->merchantId) {
 			util::fail('您没有权限操作');
 		}
-
+		
 		$confirmPassword = $post['confirmPassword'];
 		AdminService::verifyConfirmPassword($this->adminId, $confirmPassword);
-
+		
 		$grade = xhMerchantExtendService::getGradeList($this->merchantExtend, 'desc');
 		$newLevelGrowth = $grade[$memberLevel]['growth'];//升级到当前级别需要的积分数
 		$userAsset = UserAssetService::getByUserId($userId);//用户资产
 		if (!empty($userAsset['isMember']) && $userAsset['memberLevel'] >= $memberLevel) {
 			util::fail('客户已经达到此级别了');
 		}
-
+		
 		$now = time();
 		$date = date("Y-m-d H:i", $now);
-
+		
 		$connection = Yii::$app->db;//事务处理
 		$transaction = $connection->beginTransaction();
 		try {
-
+			
 			$addGrowth = $newLevelGrowth - $userAsset['growth'];
 			//升级后的成长值
 			$upData['growth'] = $newLevelGrowth;

+ 46 - 6
biz/admin/classes/AdminClass.php

@@ -36,7 +36,7 @@ class AdminClass extends BaseClass
 			$userId = $val['userId'];
 			$list[$key]['nickName'] = isset($userInfo[$userId]['userName']) ? $userInfo[$userId]['userName'] : '';
 			$list[$key]['avatarUrl'] = isset($userInfo[$userId]['avatar']) ? $prefix . $userInfo[$userId]['avatar'] : $prefix . '/none.jpg';
-			$list[$key]['mobile'] = isset($userInfo[$userId]['mobile']) ? $prefix . $userInfo[$userId]['mobile'] : '';
+			$list[$key]['mobile'] = isset($userInfo[$userId]['mobile']) ? $userInfo[$userId]['mobile'] : '';
 			$list[$key]['addDate'] = date("Y-m-d H:i", $val['addTime']);
 			$list[$key]['lastLoginTime'] = date("Y-m-d H:i", $val['loginTime']);
 		}
@@ -69,15 +69,17 @@ class AdminClass extends BaseClass
 		$user = UserClass::getById($userId);
 		UserClass::valid($user, $merchantId);
 		
+		$relateUserIdList = self::getAdminRelateUserId($merchantId);
+		if (in_array($userId, $relateUserIdList)) {
+			util::fail('您选择的微信已经绑定别的帐号');
+		}
+		
 		$adminName = $data['adminName'];
 		$adminNameList = self::getAdminNameList($merchantId);
 		if (in_array($adminName, $adminNameList)) {
 			util::fail('名字已被使用');
 		}
-		$relateUserIdList = self::getAdminRelateUserId($merchantId);
-		if (in_array($userId, $relateUserIdList)) {
-			util::fail('您选择的微信已经绑定别的帐号');
-		}
+		
 		$respond = self::add($data);
 		return $respond;
 	}
@@ -112,7 +114,7 @@ class AdminClass extends BaseClass
 			util::fail('您没有权限操作此员工');
 		}
 	}
-
+	
 	//删除员工,需要考虑权限 shish 2019.12.9
 	public static function deleteAdmin($admin, $adminId)
 	{
@@ -125,5 +127,43 @@ class AdminClass extends BaseClass
 		}
 		self::deleteById($id);
 	}
+	
+	//更新员工 shish 2019.12
+	public static function updateAdmin($admin, $data)
+	{
+		$id = $admin['id'];
+		//验证角色
+		$roleId = $data['roleId'];
+		if ($roleId != $admin['roleId']) {
+			$role = AdminRoleClass::getById($roleId);
+			AdminRoleClass::valid($role, $merchantId);
+		}
+		
+		//验证关联的微信
+		$userId = $data['userId'];
+		if ($userId != $admin['userId']) {
+			$user = UserClass::getById($userId);
+			UserClass::valid($user, $merchantId);
+			
+			$relateUserIdList = self::getAdminRelateUserId($merchantId);
+			if (in_array($userId, $relateUserIdList)) {
+				util::fail('您选择的微信已经绑定别的帐号');
+			}
+		}
+
+		//密码留空不修改密码
+		if (isset($data['password']) && empty($data['password'])) {
+			unset($data['password']);
+		}
 
+		$adminName = $data['adminName'];
+		if ($adminName != $admin['adminName']) {
+			$adminNameList = self::getAdminNameList($merchantId);
+			if (in_array($adminName, $adminNameList)) {
+				util::fail('名字已被使用');
+			}
+		}
+		self::updateById($id, $data);
+	}
+	
 }

+ 7 - 1
biz/admin/services/AdminRoleService.php

@@ -15,5 +15,11 @@ class AdminRoleService extends BaseService
 	{
 		return AdminRoleClass::valid($role, $merchantId);
 	}
-	
+
+	//角色列表 shish 2019.12.9
+	public static function getRoleList($merchantId)
+	{
+		return AdminRoleClass::getAllByCondition(['merchantId' => $merchantId],null,'*');
+	}
+
 }

+ 5 - 0
biz/admin/services/AdminService.php

@@ -96,6 +96,11 @@ class AdminService extends BaseService
 	{
 		return AdminClass::addAdmin($data);
 	}
+
+	public static function updateAdmin($admin, $post)
+	{
+		return AdminClass::updateAdmin($admin,$post);
+	}
 	
 	//获取员工信息 shish 2019.12.8
 	public static function getDetail($id)