package com.moral.api.controller; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; import com.moral.api.entity.Group; import com.moral.api.service.GroupService; import com.moral.api.service.UserService; import com.moral.constant.ResultMessage; import com.moral.util.TokenUtils; import com.moral.util.WebUtils; @Slf4j @Api(tags = {"大屏"}) @RestController @RequestMapping("/api") public class WebController { @Autowired private UserService userService; @Autowired private GroupService groupService; @ApiOperation(value = "登陆", notes = "登陆") @ApiImplicitParams({ @ApiImplicitParam(name = "account", value = "账户", required = false, paramType = "query", dataType = "String"), @ApiImplicitParam(name = "password", value = "密码", required = false, paramType = "query", dataType = "String") }) @RequestMapping(value = "login", method = RequestMethod.POST) public ResultMessage login(HttpServletRequest request) { Map parameters = WebUtils.getParametersStartingWith(request, null); if (!(parameters.containsKey("account") && parameters.containsKey("password"))) { return ResultMessage.fail("账户及密码不允许为空!"); } Map map = userService.login(parameters); if (map.get("token") == null) { return ResultMessage.fail(map.get("msg").toString()); } return ResultMessage.ok(map); } @ApiOperation(value = "注销", notes = "注销") @RequestMapping(value = "logout", method = RequestMethod.POST) public ResultMessage logout(HttpServletRequest request) { String userId = request.getHeader("uid"); String token = request.getHeader("token"); TokenUtils.destoryToken(userId, token); return ResultMessage.ok(); } @ApiOperation(value = "添加组", notes = "添加组") @ApiImplicitParams({ @ApiImplicitParam(name = "groupName", value = "组名", required = true, paramType = "query", dataType = "String") }) @RequestMapping(value = "addGroup", method = RequestMethod.POST) private ResultMessage addGroup(Group group, HttpServletRequest request) { String currentUserId = request.getHeader("uid"); Map map = groupService.addGroup(group, currentUserId); String msg = map.get("msg").toString(); boolean flag = Boolean.parseBoolean(map.get("flag").toString()); if (flag) { return ResultMessage.ok(msg); } return ResultMessage.fail(msg); } }