From 539a7077cbf638a5aa9ae5e46c17be96daba7d9b Mon Sep 17 00:00:00 2001
From: fengxiang <110431245@qq.com>
Date: Mon, 02 Jul 2018 10:54:19 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/main/java/com/moral/service/impl/AccountServiceImpl.java |   28 +++++++++++++++++++++++++---
 1 files changed, 25 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/moral/service/impl/AccountServiceImpl.java b/src/main/java/com/moral/service/impl/AccountServiceImpl.java
index 1da082a..87ee342 100644
--- a/src/main/java/com/moral/service/impl/AccountServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/AccountServiceImpl.java
@@ -2,7 +2,6 @@
 
 import static com.moral.common.bean.Constants.IS_DELETE_FALSE;
 import static com.moral.common.bean.Constants.IS_DELETE_TRUE;
-import static com.moral.common.util.Crypto.md5;
 import static com.moral.common.util.ResourceUtil.getValue;
 import static org.apache.commons.lang3.StringUtils.isNumeric;
 import static org.springframework.util.ObjectUtils.isEmpty;
@@ -11,6 +10,7 @@
 
 import javax.annotation.Resource;
 
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -50,9 +50,11 @@
 		Map<String, Object> result = new HashMap<String, Object>();
 		Account account = new Account();
 		account.setAccountName((String) parameters.get("account"));
-		account.setPassword(encoder.encode((String) parameters.get("password")));
+		String rawPassword = (String) parameters.get("password");
+//		account.setPassword(encoder.encode((String) parameters.get("password")));
 		account = accountMapper.selectOne(account);
-		if (isEmpty(account)) {
+		boolean isValid = account == null ? false:encoder.matches(rawPassword,account.getPassword());
+		if (!isValid) {
 			result.put("msg", "���������������������������������");
 		} else {
 			if (IS_DELETE_FALSE.equals(account.getIsDelete())) {
@@ -141,6 +143,10 @@
 	@Override
 	@Transactional
 	public Integer saveOrUpdateAccount(Account account) {
+		// ������������
+		if(!StringUtils.isBlank(account.getPassword())){
+			account.setPassword(encoder.encode(account.getPassword()));
+		}
 		if (ObjectUtils.isEmpty(account.getId())) {
 			account.setIsDelete(Constants.IS_DELETE_FALSE);
 			account.setCreateTime(new Date());
@@ -173,4 +179,20 @@
 		Account account = accountMapper.getByAccountName(accountName);
 		return Optional.ofNullable(account);
 	}
+
+	@Override
+	public Account companyLogin(Map<String, Object> parameters) {
+		Account account = new Account();
+		account.setIsDelete(Constants.IS_DELETE_FALSE);
+		account.setAccountName(parameters.get("account").toString());
+		account = accountMapper.selectOne(account);
+		if (ObjectUtils.isEmpty(account)) {
+			throw new BusinessException("���������������������������������������");
+		}
+		if (!encoder.matches(parameters.get("password").toString(), account.getPassword())) {
+			throw new BusinessException("���������������������������������");
+		}
+		account.setPassword(parameters.get("password").toString());
+		return account;
+	}
 }

--
Gitblit v1.8.0