ganzi-api/inventory-ent/src/main/java/com/rzyc/controller/PersonalController.java

100 lines
3.6 KiB
Java
Raw Normal View History

2022-09-16 15:07:17 +08:00
package com.rzyc.controller;
2022-09-26 09:22:06 +08:00
import com.alibaba.fastjson.JSONArray;
import com.common.utils.StringUtils;
import com.common.utils.encryption.PasswdFactory;
import com.common.utils.jwt.JwtUtil;
import com.common.utils.model.Code;
import com.common.utils.model.Message;
2022-09-16 15:07:17 +08:00
import com.common.utils.model.SingleResult;
2022-09-26 09:22:06 +08:00
import com.rzyc.bean.user.dto.LoginDto;
import com.rzyc.bean.user.dto.WeChartLoginDto;
import com.rzyc.model.ent.SysEnterprise;
import com.rzyc.model.user.SysUser;
2022-09-16 15:07:17 +08:00
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.stereotype.Controller;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
2022-09-26 09:22:06 +08:00
import javax.validation.Valid;
2022-09-16 15:07:17 +08:00
/**
* 个人中心系统
* @author dong
* @date 2022-09-16 14:19
* @Version V1.0
*/
@Api(tags = "个人中心系统")
@CrossOrigin("*")
@RequestMapping("personal")
@RestController
@Validated
public class PersonalController extends BaseController{
/**
2022-09-26 09:22:06 +08:00
* 企业登录
* @param loginDto
* @return
* @throws Exception
2022-09-16 15:07:17 +08:00
*/
2022-09-26 09:22:06 +08:00
@ApiOperation(value = "企业登录", notes = "企业登录")
@PostMapping(value = "/entlogin")
@ResponseBody
public SingleResult<SysUser> applogin(@Valid WeChartLoginDto loginDto)throws Exception{
SingleResult<SysUser> result = new SingleResult<>();
System.out.println("loginDto -> "+JSONArray.toJSONString(loginDto));
String sysusername = loginDto.getSysusername();
String syspassword = loginDto.getSyspassword();
System.out.println("sessionid -> "+request.getSession().getId());
SysUser sysUser = sysUserMapper.findBySysUserName(sysusername);
if(null != sysUser && StringUtils.isNotBlank(sysUser.getUsertype())){
if("企业用户".equals(sysUser)){
//如果企业被禁用 直接返回登录失败
SysEnterprise sysEnterprise = sysEnterpriseMapper.selectByPrimaryKey(sysUser.getSysunitorentid());
if(null == sysEnterprise){
result.setCode(Code.TOKEN_EXPIRE.getCode());
result.setMessage(Message.TOKEN_EXPIRE);
return result;
}
}
String ps = PasswdFactory.encryptPasswd(sysUser.getSysuserid(), sysusername, syspassword);
if(sysUser.getSyspassword().equals(ps) || "guest".equals(sysUser.getUsertype())){
sysUser.setSyspassword("");
sysUser.setSyspassword("");
//获取职务
sysUser = getUserDuty(sysUser);
// if(StringUtils.isNotBlank())
//通过角色判断是否为安办 或者 部门管理员
if(StringUtils.isNotBlank(sysUser.getUserroles())){
Integer userRole = this.getUserRole(sysUser.getUserroles());
sysUser.setUserRole(userRole);
}
//用户权限
userAuth(sysUser);
this.addLogAuth(sysUser.getSysuserid(),"登录","成功","");
String userToken = JwtUtil.createToken(sysUser.getSysuserid());
sysUser.setUserToken(userToken);
result.setData(sysUser);
}else{
this.addLogAuth(sysUser.getSysuserid(),"登录","失败","");
result.setCode(Code.PASSWORD_ERROR.getCode());
result.setMessage(Message.PASSWORD_ERROR);
}
}else{
result.setCode(Code.PASSWORD_ERROR.getCode());
result.setMessage(Message.PASSWORD_ERROR);
}
2022-09-16 15:07:17 +08:00
return result;
}
}