package com.caimei.service.user.impl; import com.caimei.entity.CmOperationUser; import com.caimei.entity.WxJsonModel; import com.caimei.mapper.user.LoginMapper; import com.caimei.service.user.LoginService; import com.caimei.utils.SessionHelper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; import java.util.Date; @Service public class LoginServiceImpl implements LoginService { @Autowired private LoginMapper loginMapper; @Override public CmOperationUser doLogin(String openid, Integer userOrganizeID) { CmOperationUser operationUser = loginMapper.doLogin(openid, userOrganizeID); return operationUser; } @Override public CmOperationUser isEnabled(String invitationCode, Integer userOrganizeID) { CmOperationUser operationUser = loginMapper.isEnabled(invitationCode, userOrganizeID); return operationUser; } @Override public WxJsonModel update(CmOperationUser operationUser, HttpServletRequest request) { WxJsonModel res = WxJsonModel.newInstance(); CmOperationUser cmOperationUser = loginMapper.doLogin(operationUser.getOpenid(), operationUser.getUserOrganizeID()); //判断是否已有绑定用户 if (cmOperationUser != null) { return res.error("您已授权,无需重复登录"); } CmOperationUser user = loginMapper.query(operationUser); //判断是否存在已下线的会所用户 if (user != null) { user.setOpenid(""); user.setLinkName(""); user.setBindTime(null); user.setDelFlag("1"); user.setStatus("1"); user.setUpdateTime(new Date()); loginMapper.updateOperationUser(user); } operationUser.setStatus("2"); operationUser.setBindTime(new Date()); operationUser.setUpdateTime(new Date()); loginMapper.update(operationUser); //传入session,返回用户信息,更新sessionId CmOperationUser user1 = loginMapper.doLogin(operationUser.getOpenid(), operationUser.getUserOrganizeID()); HttpSession session = SessionHelper.getSession(); String sessionId = session.getId(); session.setAttribute("openid", operationUser.getOpenid()); session.setAttribute("organizeID", operationUser.getUserOrganizeID()); user1.setSessionId(sessionId); return res.success(user1); } @Override public String cellPhone(Integer userOrganizeID) { return loginMapper.cellPhone(userOrganizeID); } }