Commit 1ccfa313 authored by wwccw0591's avatar wwccw0591

Merge branch 'master_dev' of git.shenbd.com:qm-develop/shenbd into ccw

parents a2c920f5 d53046ca
......@@ -33,6 +33,11 @@ class UserController extends \Our\Controller_AbstractIndex {
$password=$data[NameConst::password];
if($this->memberService->checkUserNamePassWord($mobile,$password)){
$member= $this->memberService->getOneByMobileAndPassword($mobile,$password);
//第二步保存扫码会员信息
$result = $this->memberService->saveStoreMembers($member['member_id']);
if(!$result){
\Error\ErrorModel::throwException(\Error\CodeConfigModel::saveStoreMemberFailed);
}
/**
* 合并第三方授权信息
*/
......@@ -132,6 +137,11 @@ class UserController extends \Our\Controller_AbstractIndex {
if(!empty($userToken['token'])){
$this->updateOldLoginKey($userToken['token']);
}
//第二步保存扫码会员信息
$result = $this->memberService->saveStoreMembers($member['member_id']);
if(!$result){
\Error\ErrorModel::throwException(\Error\CodeConfigModel::saveStoreMemberFailed);
}
$this->memberService->clearKey($this->key);
$this->key=Common::bulidToken('', '', '', \Our\ApiConst::wechatDeviceType);
session_id($this->key);
......
......@@ -80,9 +80,10 @@ class MemberServiceModel extends \Business\AbstractModel
}
private function getRealPassword($password,$timeSpan){
$addKey=Common::getConfig('password.key');
$md5Str=$timeSpan.$addKey.$password;
$md5Str = $timeSpan.$password.$addKey;
return $md5Str;
}
public function getOneByMobileAndPassword($mobile, $password)
{
// $password=$this->getPassAddKey($password);
......@@ -275,8 +276,9 @@ class MemberServiceModel extends \Business\AbstractModel
private function saveRegisterMemberInfo($where){
$memberDao = \DAO\MemberModel::getInstance(\Our\DbNameConst::masterDBConnectName);
$addKey=Common::getConfig('password.key');
$memberTime = TIMESTAMP;
if(!empty($addKey)){
$md5Str=TIMESTAMP.$addKey.$where['password'];
$md5Str=$memberTime.$addKey.$where['password'];
}else{
$md5Str=$where['password'];
}
......@@ -286,7 +288,7 @@ class MemberServiceModel extends \Business\AbstractModel
$member['member_mobile'] = $where['mobile'];
$member['member_mobile_bind'] = \Our\ApiConst::one;
$member['member_passwd'] = md5($md5Str);
$member['member_time'] = TIMESTAMP;
$member['member_time'] = $memberTime;
$result = $memberDao->addInfo($member);
return $result;
}
......@@ -305,7 +307,7 @@ class MemberServiceModel extends \Business\AbstractModel
* @param $memberId
* @return bool
*/
private function saveStoreMembers($memberId){
public function saveStoreMembers($memberId){
$sess=\Yaf\Session::getInstance();
$scan_store_ids = $sess->get('scan_store_ids');//扫码带入的店铺ID
if($scan_store_ids){
......@@ -591,9 +593,15 @@ class MemberServiceModel extends \Business\AbstractModel
if($existMember['memberMobile']&&$existMember['memberMobileBind']){
\Error\ErrorModel::throwException(\Error\CodeConfigModel::registerMemberInfoFailed);
}
$memberTime= $memberDao->getInfo($memberMapping['member_id'],'member_time');
if(!$memberTime){
$memberTime = TIMESTAMP;
}
$passwordStr = $this->getRealPassword($where['password'],$memberTime);
$member['member_mobile'] = $where['mobile'];
$member['member_mobile_bind'] = \Our\ApiConst::one;
$member['member_passwd'] = md5($where['password']);
$member['member_passwd'] = md5($passwordStr);
$member['member_time'] = $memberTime;
$updateMemberResult = $memberDao->saveInfo($member,$memberMapping['member_id']);
if(!$updateMemberResult){
\Error\ErrorModel::throwException(\Error\CodeConfigModel::authMemberExistMobile);
......@@ -683,7 +691,13 @@ class MemberServiceModel extends \Business\AbstractModel
}
$memberDao = \DAO\MemberModel::getInstance();
$memberDao->checkPassword($data);
$result = $memberDao->updateInfo(array('member_passwd'=>md5($data['password'])),array('member_mobile'=>$passwordMobile));
$memberTimeArray = $memberDao->getOneByWhereWithField(array('member_mobile'=>$passwordMobile),'member_time');
$memberTime = TIMESTAMP;
if($memberTimeArray&&$memberTimeArray['member_time']){
$memberTime = $memberTimeArray['member_time'];
}
$passwordStr = $this->getRealPassword($data['password'],$memberTime);
$result = $memberDao->updateInfo(array('member_passwd'=> md5($passwordStr),'member_time'=>$memberTime),array('member_mobile'=>$passwordMobile));
if($result===false){
return false;
}
......@@ -700,8 +714,12 @@ class MemberServiceModel extends \Business\AbstractModel
$data['messageType'] = \Our\ApiConst::messageTypeValidNewMobile;
$shortMessageDao->validCode($data);
$result = $memberDao->updateInfo(array('member_passwd'=>md5($data['password']),'member_mobile'=>$data['mobile'],'member_mobile_bind'=>\Our\ApiConst::one),array('member_id'=>$memberId));
$memberTime = $memberDao->getInfo($memberId,'member_time');
if(!$memberTime){
$memberTime = TIMESTAMP;
}
$passwordStr = $this->getRealPassword($data['password'],$memberTime);
$result = $memberDao->updateInfo(array('member_passwd'=>md5($passwordStr),'member_mobile'=>$data['mobile'],'member_time'=>$memberTime,'member_mobile_bind'=>\Our\ApiConst::one),array('member_id'=>$memberId));
if(!$result){
\Error\ErrorModel::throwException(\Error\CodeConfigModel::changeMobileFailed);
}
......@@ -721,7 +739,13 @@ class MemberServiceModel extends \Business\AbstractModel
public function changePassword($where,$memberId){
$memberDao = \DAO\MemberModel::getInstance();
$memberDao->checkOldPassword($where,$memberId);
$result = $memberDao->updateInfo(array('member_passwd'=>md5($where['password'])),array('member_id'=>$memberId));
$memberTime = TIMESTAMP;
$memberTimeStr = $memberDao->getInfo($memberId,'member_time');
if(!$memberTimeStr){
$memberTime = $memberTimeStr;
}
$passwordStr = $this->getRealPassword($where['password'],$memberTime);
$result = $memberDao->updateInfo(array('member_passwd'=>md5($passwordStr),'member_time'=>$memberTime),array('member_id'=>$memberId));
if($result){
$this->logOut($where['key']);
return true;
......@@ -888,7 +912,13 @@ class MemberServiceModel extends \Business\AbstractModel
$data['messageType'] = \Our\ApiConst::messageTypeWxLietBindMobile;
$shortMessageDao->validCode($data);
$updateMember = array('member_passwd'=>md5($data['password']),'member_mobile'=>$data['mobile'],'member_mobile_bind'=>\Our\ApiConst::one);
$memberTime = TIMESTAMP;
$memberTimeStr = $memberDao->getInfo($memberId,'member_time');
if(!$memberTimeStr){
$memberTime = $memberTimeStr;
}
$passwordStr = $this->getRealPassword($data['password'],$memberTime);
$updateMember = array('member_passwd'=>md5($passwordStr),'member_mobile'=>$data['mobile'],'member_mobile_bind'=>\Our\ApiConst::one,'member_time'=>$memberTime);
$result = $memberDao->updateInfo($updateMember,array('member_id'=>$memberId));
if(!$result){
\Error\ErrorModel::throwException(\Error\CodeConfigModel::wxMemberBindMobileFailed);
......@@ -920,11 +950,18 @@ class MemberServiceModel extends \Business\AbstractModel
//验证短信验证码
$shortMessageDao = \DAO\ShortMessageModel::getInstance();
$memberTime = TIMESTAMP;
$memberTimeStr = $memberDao->getInfo($memberId,'member_time');
if(!$memberTimeStr){
$memberTime = $memberTimeStr;
}
$passwordStr = $this->getRealPassword($data['password'],$memberTime);
$data['messageType'] = \Our\ApiConst::messageTypeWxLietBindMobile;
$shortMessageDao->validCode($data);
if($mobileMember){
$memberDao->db->doTransaction();
$updateMobileMember['member_passwd'] = md5($data['password']);
$updateMobileMember['member_passwd'] = md5($passwordStr);
$updateMobileMember['member_time'] = $memberTime;
$resultMember = $memberDao->updateInfo($updateMobileMember,array('member_id'=>$mobileMember['member_id']));
if($resultMember===false){
$memberDao->db->doRollback();
......@@ -942,7 +979,15 @@ class MemberServiceModel extends \Business\AbstractModel
$memberDao->db->doCommit();
$sess['member_id'] = $mobileMember['member_id'];
}else{
$updateMember = array('member_passwd'=>md5($data['password']),'member_mobile'=>$data['mobile'],'member_mobile_bind'=>\Our\ApiConst::one);
$memberTime = TIMESTAMP;
$memberTimeStr = $memberDao->getInfo($memberId,'member_time');
if(!$memberTimeStr){
$memberTime = $memberTimeStr;
}
$passwordStr = $this->getRealPassword($data['password'],$memberTime);
$data['messageType'] = \Our\ApiConst::messageTypeWxLietBindMobile;
$updateMember = array('member_passwd'=>md5($passwordStr),'member_mobile'=>$data['mobile'],'member_mobile_bind'=>\Our\ApiConst::one,'member_time'=>$memberTime);
$result = $memberDao->updateInfo($updateMember,array('member_id'=>$memberId));
if(!$result){
\Error\ErrorModel::throwException(\Error\CodeConfigModel::wxMemberBindMobileFailed);
......@@ -955,6 +1000,7 @@ class MemberServiceModel extends \Business\AbstractModel
return true;
}
public function growMembers(){
$memberDao=\DAO\MemberModel::getInstance();
$res =$memberDao->getAll();
......
......@@ -124,7 +124,7 @@ class FavoritesStoreModel extends \DAO\AbstractModel {
$insertAllSql .= $addSql;
if ($i % 1000 == 0 && $i != 0) {
$insertAllSql = rtrim($insertAllSql, ',');
$insertAllSql .= 'ON DUPLICATE KEY UPDATE fav_time=VALUES (fav_time)';
$insertAllSql .= 'ON DUPLICATE KEY UPDATE fav_time=VALUES (fav_time),fav_from = VALUES (fav_from)';
$one = $this->db->insert($this->_tableName)->query($insertAllSql);
if (!$one) {
$error++;
......@@ -134,7 +134,7 @@ class FavoritesStoreModel extends \DAO\AbstractModel {
}
if ($insertAllSql != $baseSql) {
$insertAllSql = rtrim($insertAllSql, ',');
$insertAllSql .= 'ON DUPLICATE KEY UPDATE fav_time=VALUES (fav_time)';
$insertAllSql .= 'ON DUPLICATE KEY UPDATE fav_time=VALUES (fav_time),fav_from = VALUES (fav_from)';
$one = $this->db->insert($this->_tableName)->query($insertAllSql);
if (!$one) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment