package com.qianwen.mdc.controller;
|
|
import com.alibaba.fastjson.JSONObject;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.qianwen.mdc.common.OpResult;
|
import com.qianwen.mdc.domain.AccountToken;
|
import com.qianwen.mdc.domain.DomainException;
|
import com.qianwen.mdc.domain.SysAccount;
|
import com.qianwen.mdc.dto.MachineQueryDTO;
|
import com.qianwen.mdc.dto.SysAccountDTO;
|
import com.qianwen.mdc.dto.WorkshopMapDTO;
|
import com.qianwen.mdc.mapper.SysAccountMapper;
|
import com.qianwen.mdc.service.impl.MdcTokenServiceImpl;
|
import com.qianwen.mdc.service.sysaccount.AccountTokenService;
|
import com.qianwen.mdc.service.sysaccount.SysAccountService;
|
import com.qianwen.mdc.utils.redis.RedisUtil;
|
|
import org.slf4j.Logger;
|
import org.slf4j.LoggerFactory;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.annotation.Resource;
|
import java.util.List;
|
|
/**
|
*
|
*/
|
@RestController
|
@CrossOrigin
|
@RequestMapping(value = "/user", method = RequestMethod.POST)
|
public class SysAccountController {
|
@Autowired
|
private SysAccountService accountService;
|
@Autowired
|
private AccountTokenService accountTokenService;
|
//@Autowired
|
//private MdcTokenMapper mdcTokenMapper;
|
@Resource
|
private RedisUtil redisUtil;
|
|
private static final Logger logger = LoggerFactory.getLogger(SysAccountController.class);
|
|
/**
|
* 登陆
|
* @param username 用户名
|
* @param password 密码
|
* @return 带token对的Result
|
*/
|
@RequestMapping(value = "/login", method = RequestMethod.POST)
|
public OpResult<String> userLogin(String username, String password) {
|
/*
|
JSONObject jsonResult = new JSONObject();
|
|
SysAccount mdcUserObj = new SysAccount();
|
QueryWrapper<SysAccount> qw = Wrappers.emptyWrapper();
|
qw.eq("username", userName)
|
SysAccount mdcUser = mdcUserMapper.selectOne(qw);
|
//SysAccount mdcUser = mdcUserMapper.selectOne(mdcUserObj);
|
logger.debug("user: {}", mdcUser);
|
if (mdcUser != null) {
|
if (userName.equals(mdcUser.getUsername()) && password.equals(mdcUser.getPassword())) {
|
jsonResult.put("result", "SUCCESS");
|
|
AccountToken mdcTokenObj = new AccountToken();
|
mdcTokenObj.setUserId(mdcUser.getId());
|
AccountToken mdcToken = mdcTokenMapper.selectOne(mdcTokenObj);
|
if (mdcToken == null) {
|
String token = MdcTokenServiceImpl.genToken(userName);
|
mdcTokenObj.setToken(token);
|
mdcTokenObj.setExpireTime(MdcTokenServiceImpl.genExpiredTime());
|
mdcTokenMapper.insert(mdcTokenObj);
|
jsonResult.put("token", mdcTokenObj.getToken());
|
} else {
|
mdcToken.setExpireTime(MdcTokenServiceImpl.genExpiredTime());
|
//mdcTokenMapper.updateByPrimaryKey(mdcToken);
|
mdcTokenMapper.updateById(mdcToken);
|
jsonResult.put("token", mdcToken.getToken());
|
}
|
} else {
|
jsonResult.put("result", "FAIL");
|
}
|
} else {
|
jsonResult.put("result", "FAIL");
|
}
|
|
return jsonResult;
|
*/
|
String token = null;
|
try {
|
token = accountService.login(username, password);
|
return OpResult.success(token);
|
}catch(DomainException e) {
|
return OpResult.fail(e.getMessage());
|
}
|
|
}
|
|
@GetMapping(value = "/currentUser")
|
public OpResult<SysAccountDTO> currentUser(@RequestHeader(value = "mdc-token", defaultValue = "") String token) {
|
|
try {
|
accountTokenService.checkToken(token);
|
|
return OpResult.success(accountService.getUserByToken(token));
|
}catch(Exception e) {
|
logger.error("查询异常2",e);
|
return OpResult.fail(e.getMessage());
|
}
|
}
|
|
@RequestMapping(value = "/list", method = RequestMethod.POST)
|
public JSONObject getUserList(@RequestHeader(value = "mdc-token", defaultValue = "") String token) {
|
/*
|
AccountToken mdcTokenObj = new AccountToken();
|
mdcTokenObj.setToken(token);
|
AccountToken mdcToken = mdcTokenMapper.selectOne(mdcTokenObj);
|
JSONObject tokenResult = MdcTokenServiceImpl.genTokenErrMsg(mdcToken);
|
if (tokenResult != null) {
|
return tokenResult;
|
}
|
|
mdcToken.setExpireTime(MdcTokenServiceImpl.genExpiredTime());
|
mdcTokenMapper.updateByPrimaryKeySelective(mdcToken);
|
|
JSONObject jsonResult = new JSONObject();
|
jsonResult.put("result", "SUCCESS");
|
|
List<SysAccount> mdcUsers = mdcUserMapper.selectAll();
|
jsonResult.put("list", mdcUsers);
|
|
return jsonResult;
|
*/
|
return null;
|
}
|
|
|
}
|