Просмотр исходного кода

[用户行为][修改]:登录行为修改

release_toaliyun_real
Stormeye Wu 7 лет назад
Родитель
Сommit
81e9aa23d7
3 измененных файлов: 42 добавлений и 54 удалений
  1. +15
    -40
      mallinkAdmin/src/main/java/com/iformall/controller/sys/HomeController.java
  2. +11
    -14
      mallinkService/src/main/java/com/iformall/service/MallUserActionService.java
  3. +16
    -0
      mallinkService/src/main/java/com/iformall/service/impl/MallUserActionServiceImpl.java

+ 15
- 40
mallinkAdmin/src/main/java/com/iformall/controller/sys/HomeController.java Просмотреть файл

@@ -142,11 +142,6 @@ public class HomeController extends BaseController {
MallUserInfo info = (MallUserInfo) SecurityUtils.getSubject().getSession().getAttribute(UserSession.userInfo);
info.protectInfos();

String menus = mallUserRoleService.getPermissionsByUser(info);
if(menus != null) {
info.setMenus(menus);
}

try {
String cookieName = URLEncoder.encode(info.getUsername(), "utf-8");
Cookie unameCookie = new Cookie("uname", cookieName);
@@ -154,20 +149,16 @@ public class HomeController extends BaseController {
unameCookie.setMaxAge(3600);
response.addCookie(unameCookie);

data.data = info;

MallUserAction action = new MallUserAction();
action.setTenantId(info.getTenantId());
action.setType(EnumMallUserAction.CONTROLLER.getCode());
action.setIp(ipaddress);
action.setUserId(info.getId());
action.setActionDesc("用户登录");
action.setActionTime(new Date());
mallUserActionService.saveOrUpdate(action);
Map map = new HashMap();
map.put("username", info.getUsername());
map.put("withWechat", info.getWithWechat());
data.data = map;
} catch (Exception e) {
logger.error(e.getMessage());
return new ResultData(Result.ERROR, e.getMessage());
}

mallUserActionService.saveActionInfo(info.getTenantId(), EnumMallUserAction.CONTROLLER.getCode(), ipaddress, info.getId(), "用户登录");
}
return data;
}
@@ -218,28 +209,22 @@ public class HomeController extends BaseController {
Subject subject = SecurityUtils.getSubject();
UseriFormallToken token = new UseriFormallToken(user.getUsername());
subject.login(token);

MallUserInfo info = (MallUserInfo) SecurityUtils.getSubject().getSession().getAttribute(UserSession.userInfo);
info.protectInfos();
String menus = mallUserRoleService.getPermissionsByUser(info);
if(menus != null) {
info.setMenus(menus);
}

String cookieName = URLEncoder.encode(info.getUsername(), "utf-8");
Cookie unameCookie = new Cookie("uname", cookieName);
unameCookie.setPath("/");
unameCookie.setMaxAge(3600);
response.addCookie(unameCookie);

MallUserAction action = new MallUserAction();
action.setTenantId(info.getTenantId());
action.setType(EnumMallUserAction.CONTROLLER.getCode());
action.setIp(ipaddress);
action.setUserId(info.getId());
action.setActionDesc("用户登录");
action.setActionTime(new Date());
mallUserActionService.saveOrUpdate(action);
Map map = new HashMap();
map.put("username", info.getUsername());
map.put("withWechat", info.getWithWechat());
data.data = map;

data.data = info;
mallUserActionService.saveActionInfo(info.getTenantId(), EnumMallUserAction.CONTROLLER.getCode(), ipaddress, info.getId(), "用户B端数据塔台登录");
} catch (MallinkException e) {
logger.error(e.getMessage());
return new ResultData(e.getErrorCode(), e.getMessage());
@@ -316,12 +301,9 @@ public class HomeController extends BaseController {
Subject subject = SecurityUtils.getSubject();
UseriFormallToken token = new UseriFormallToken(user.getUsername());
subject.login(token);

MallUserInfo info = (MallUserInfo) SecurityUtils.getSubject().getSession().getAttribute(UserSession.userInfo);
info.protectInfos();
String menus = mallUserRoleService.getPermissionsByUser(info);
if(menus != null) {
info.setMenus(menus);
}

String cookieName = URLEncoder.encode(info.getUsername(), "utf-8");
Cookie unameCookie = new Cookie("uname", cookieName);
@@ -329,14 +311,7 @@ public class HomeController extends BaseController {
unameCookie.setMaxAge(3600);
response.addCookie(unameCookie);

MallUserAction action = new MallUserAction();
action.setTenantId(info.getTenantId());
action.setType(EnumMallUserAction.CONTROLLER.getCode());
action.setIp(ipaddress);
action.setUserId(info.getId());
action.setActionDesc("用户手机号登录");
action.setActionTime(new Date());
mallUserActionService.saveOrUpdate(action);
mallUserActionService.saveActionInfo(info.getTenantId(), EnumMallUserAction.CONTROLLER.getCode(), ipaddress, info.getId(), "用户手机号登录");

return new ResultData(info);
} catch (MallinkException e) {


+ 11
- 14
mallinkService/src/main/java/com/iformall/service/MallUserActionService.java Просмотреть файл

@@ -1,12 +1,13 @@
package com.iformall.service;

import java.util.*;

import com.github.pagehelper.PageInfo;
import com.iformall.domain.po.MallUserAction;

public interface MallUserActionService {

/**
/**
* 根据实体查询分页列表
*
* @param record
@@ -14,35 +15,31 @@ public interface MallUserActionService {
* @param pageSize
* @return
*/
PageInfo<MallUserAction> listAsPage(MallUserAction record, Integer pageIndex, Integer pageSize);
/**
PageInfo<MallUserAction> listAsPage(MallUserAction record, Integer pageIndex, Integer pageSize);
/**
* 根据Id获得实体
*
* @param id
* @return
*/
MallUserAction getById(Long id);
/**
/**
* 保存或更新实体
*
* @param record
*/
void saveOrUpdate(MallUserAction record);

void saveActionInfo(String tenantId, Integer actionType, String ipAddress, Long userId, String actionDesc);

/**
* 根据Id删除实体
*
* @param id
*/
void deleteById(Long id);



}

+ 16
- 0
mallinkService/src/main/java/com/iformall/service/impl/MallUserActionServiceImpl.java Просмотреть файл

@@ -9,6 +9,8 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.iformall.common.IdWorker;

import java.util.Date;

@Service
public class MallUserActionServiceImpl implements MallUserActionService {
@@ -37,6 +39,20 @@ public class MallUserActionServiceImpl implements MallUserActionService {
}
}

@Override
public void saveActionInfo(String tenantId, Integer actionType, String ipAddress, Long userId, String actionDesc) {
MallUserAction record = new MallUserAction();
final IdWorker idWorker = IdWorker.get();
record.setId(idWorker.nextId());
record.setTenantId(tenantId);
record.setType(actionType);
record.setIp(ipAddress);
record.setUserId(userId);
record.setActionDesc(actionDesc);
record.setActionTime(new Date());
mallUserActionMapper.insertSelective(record);
}

@Override
public void deleteById(Long id) {
mallUserActionMapper.deleteByPrimaryKey(id);


Загрузка…
Отмена
Сохранить