Commit f178822f authored by nie'hong's avatar nie'hong

导出再次完成

parent 4f9f2c29
......@@ -17,6 +17,11 @@ public interface WorkUserMapper extends BaseMapper<WorkUser> {
WorkUser getUserInfo(Map<String, Object> map);
/**
* 根据id获取用户一些基本信息
* @param userId
* @return
*/
WorkUser getUserById(Integer userId);
Integer updateUserInfo(WorkUser user);
......
package cn.wisenergy.model.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
* @description: 用户信息返回结果
* @author: nh
* @create: 2021-01-21 23:13
**/
public class ResultUser {
@Data
@ApiModel(value = "ResultUser", description = "用户信息返回结果")
public class ResultUser implements Serializable {
private static final long serialVersionUID = 1453066003160006231L;
@ApiModelProperty(name = "id",value = "主键")
private Integer id;
@ApiModelProperty(name = "oaUserId",value = "oa中的用户编号")
private String oaUserId;
@ApiModelProperty(name = "deptId",value = "部门id")
private Integer deptId;
@ApiModelProperty(name = "name",value = "用户名")
private String name;
@ApiModelProperty(name = "loginName",value = "登录名")
private String loginName;
@ApiModelProperty(name = "phone",value = "手机号")
private String phone;
@ApiModelProperty(name = "email",value = "邮箱")
private String email;
@ApiModelProperty(name = "role",value = "角色(产品、开发、测试、售前)")
private String role;
@ApiModelProperty(name = "type",value = "类型(公司、外协)")
private String type;
}
......@@ -17,6 +17,8 @@ public class StatisticsTableDto implements Serializable {
private Integer userId;
private String deptName;
private String userName;
List<DayWorkTimeAndType> dayWorkTimeAndTypeList;
......
package cn.wisenergy.service;
import cn.wisenergy.model.app.WorkUser;
import cn.wisenergy.model.dto.ResultUser;
import java.util.List;
/**
......@@ -20,14 +22,14 @@ public interface WorkUserService {
* @param source 登录来源
* @return
*/
WorkUser login(String loginName, String password, String source);
ResultUser login(String loginName, String password, String source);
/**
* 获取用户信息
* @param id 用户主键
* @return
*/
WorkUser getUserById(Integer id);
ResultUser getResultUserById(Integer id);
WorkUser getById(Integer id);
......@@ -40,5 +42,5 @@ public interface WorkUserService {
* @param newPassword
* @return
*/
WorkUser changePassword(Integer userId, String oldPassword, String newPassword);
ResultUser changePassword(Integer userId, String oldPassword, String newPassword);
}
......@@ -11,6 +11,7 @@ import cn.wisenergy.model.dto.GetMonthlyCollectParam;
import cn.wisenergy.model.dto.StatisticsTableDto;
import cn.wisenergy.model.enums.ManagerEnum;
import cn.wisenergy.service.StatisticsService;
import cn.wisenergy.service.WorkDeptService;
import cn.wisenergy.service.WorkUserService;
import com.alibaba.excel.util.StringUtils;
import com.github.pagehelper.PageHelper;
......@@ -33,13 +34,16 @@ import java.util.List;
@Slf4j
public class StatisticsServiceImpl implements StatisticsService {
@Autowired
WorkUserService workUserService;
private WorkUserService workUserService;
@Autowired
WorkTimeOrderMapper workOrderMapper;
private WorkDeptService workDeptService;
@Autowired
WorkUserDeptMapper workUserDeptMapper;
private WorkTimeOrderMapper workOrderMapper;
@Autowired
private WorkUserDeptMapper workUserDeptMapper;
@Override
public PageInfo getMonthlyCollect(GetMonthlyCollectParam param) {
......@@ -48,7 +52,7 @@ public class StatisticsServiceImpl implements StatisticsService {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.INPUT_PARAM_IS_NULL);
}
//管理员用户
WorkUser user = workUserService.getUserById(param.getUserId());
WorkUser user = workUserService.getById(param.getUserId());
if (user.getLevel() != ManagerEnum.IS_SYSTEM_MANAGER.getCode()) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.THE_USER_NOT_MANAGER_PLASE_MANAGER_LOGIN);
}
......@@ -80,15 +84,16 @@ public class StatisticsServiceImpl implements StatisticsService {
//获取员工一个月中已审核、自动审核的工单单日汇总汇总
ArrayList<StatisticsTableDto> statisticsTableDtos = new ArrayList<>();
for (Integer id : userIdList) {
WorkUser workUser = workUserService.getUserById(id);
WorkUser workUser = workUserService.getById(id);
//获取当月每天工时信息
List<DayWorkTimeAndType> dayWorkTimeAndTypes = workOrderMapper.listByDateAndUserId(year, month, id);
//将一天中类型不为请假和调休的工时累加
//获取用户部门名称
String deptName = workDeptService.getById(workUser.getDeptId()).getDeptName();
//封装成对象
StatisticsTableDto statisticsTableDto = new StatisticsTableDto();
statisticsTableDto.setUserId(id);
statisticsTableDto.setUserName(workUser.getName());
statisticsTableDto.setDeptName(deptName);
statisticsTableDto.setDayWorkTimeAndTypeList(dayWorkTimeAndTypes);
statisticsTableDtos.add(statisticsTableDto);
}
......
......@@ -111,7 +111,7 @@ public class WorkProjectServiceImpl implements WorkProjectService {
if (userId == null) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.INPUT_PARAM_IS_NULL);
}
WorkUser user = workUserService.getUserById(userId);
WorkUser user = workUserService.getById(userId);
List<WorkProject> workProjects = new ArrayList<>();
HashMap<String, Object> map = new HashMap<>();
if (user.getLevel() == ManagerEnum.IS_PROJECT_DIRECTOR.getCode()) {
......
......@@ -67,7 +67,7 @@ public class WorkTimeOrderServiceImpl implements WorkTimeOrderService {
@Override
public ArrayList<Object> getMonthlyStatistics(Integer userId) {
log.info("WorkTimeOrderServiceImpl[]getMonthlyStatistics[]input.param" + userId);
WorkUser user = workUserService.getUserById(userId);
WorkUser user = workUserService.getById(userId);
//本月第一天
Date firstDayOfMonth = DateUtil.getCurrentFirstDayOfMonth();
//返回数据对象
......
......@@ -72,7 +72,7 @@ public class WorkUserProjectServiceImpl implements WorkUserProjectService {
if (userId == null) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.INPUT_PARAM_IS_NULL);
}
WorkUser user = workUserService.getUserById(userId);
WorkUser user = workUserService.getById(userId);
if (user.getLevel() != ManagerEnum.IS_PROJECT_DIRECTOR.getCode() || user.getLevel() != ManagerEnum.IS_DEPARTMENT_DIRECTOR.getCode()) {
return null;
}
......
......@@ -7,10 +7,12 @@ import cn.wisenergy.common.utils.exception.BaseCustomException;
import cn.wisenergy.mapper.WorkDeptMapper;
import cn.wisenergy.mapper.WorkUserMapper;
import cn.wisenergy.model.app.WorkUser;
import cn.wisenergy.model.dto.ResultUser;
import cn.wisenergy.model.enums.ManagerEnum;
import cn.wisenergy.service.WorkUserService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.beanutils.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
......@@ -66,11 +68,12 @@ public class WorkUserServiceImpl implements WorkUserService {
}
@Override
public WorkUser changePassword(Integer userId, String oldPassword, String newPassword) {
public ResultUser changePassword(Integer userId, String oldPassword, String newPassword) {
log.info("WorkUserServiceImpl[]changePassword[]input.param{}" + userId + oldPassword + newPassword);
if (userId == null || StringUtils.isEmpty(oldPassword) || StringUtils.isEmpty(newPassword)) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.INPUT_PARAM_IS_NULL);
}
//根据主键和密码查找
Map<String, Object> map = new HashMap<>();
map.put("id", userId);
map.put("password", Md5Util.digestMD5(oldPassword));
......@@ -78,16 +81,17 @@ public class WorkUserServiceImpl implements WorkUserService {
if (user == null) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.UPDATE_PASSWORD_FAIL_OLD_PASSWORD_ERROR);
}
//更新信息
user.setPassword(Md5Util.digestMD5(newPassword));
Integer count = workUserMapper.updateUserInfo(user);
if (count == null) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.USER_UPDATE_PASSWORD_FAIL);
}
return user;
return getResultUser(user);
}
@Override
public WorkUser login(String loginName, String password, String source) {
public ResultUser login(String loginName, String password, String source) {
log.info("WorkUserServiceImpl[]login[].input.param" + loginName + password + source);
if (StringUtils.isEmpty(loginName) || StringUtils.isEmpty(password)) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.INPUT_PARAM_IS_NULL);
......@@ -102,30 +106,42 @@ public class WorkUserServiceImpl implements WorkUserService {
if (null == user) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.USER_PHONE_IS_ERROR);
}
//如果登录来源是PC,判断用户是不是管理员
if (LOGIN_SOURCE.equals(source)) {
if (user.getLevel() == ManagerEnum.NOT_MANAGER.getCode()) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.THE_USER_NOT_MANAGER_PLASE_MANAGER_LOGIN);
}
}
return user;
//将用户对象转换为dto
ResultUser resultUser = getResultUser(user);
return resultUser;
}
@Override
public WorkUser getUserById(Integer userId) {
public ResultUser getResultUserById(Integer userId) {
log.info("UserServiceImpl[]getUserById[]input.param.userId" + userId);
if (null == userId) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.INPUT_PARAM_IS_NULL);
}
WorkUser user = workUserMapper.getUserById(userId);
//查询失败
if (null == user) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.QUERY_USER_INFO_FAIL);
}
ResultUser resultUser = getResultUser(user);
log.info("UserServiceImpl[]getUserById[]get.user.info.success");
return user;
return resultUser;
}
//获取用户传输实体
public ResultUser getResultUser(WorkUser workUser) {
log.info("WorkUSerServiceImpl[]getResultUser[]input.method");
ResultUser resultUser = new ResultUser();
try {
BeanUtils.copyProperties(resultUser,workUser);
} catch (Exception e) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.QUERY_USER_INFO_FAIL);
}
return resultUser;
}
}
package cn.wisenergy.web.admin.controller.app;
import cn.wisenergy.common.utils.exception.*;
import cn.wisenergy.model.app.WorkUser;
import cn.wisenergy.model.dto.ResultUser;
import cn.wisenergy.service.WorkTimeOrderService;
import cn.wisenergy.service.WorkUserService;
import cn.wisenergy.web.admin.controller.common.BaseController;
......@@ -37,13 +37,13 @@ public class WorkUserController extends BaseController {
@ApiOperation(value = "根据id获取用户信息", notes = "根据id获取用户信息", httpMethod = "GET")
@ApiImplicitParam(name = "id", value = "用户id", dataType = "int", required = true)
@GetMapping(value = "/getUserInfo")
public Result<WorkUser> getUserInfo(Integer id) {
public Result<ResultUser> getUserInfo(Integer id) {
log.info("UserController[]getUserInfo[]input.param.id" + id);
if (null == id) {
throw new CustomException(RESP_CODE_ENUM.INPUT_PARAM_IS_NULL);
}
WorkUser user = workUserService.getUserById(id);
return getResult(user);
ResultUser resultUser = workUserService.getResultUserById(id);
return getResult(resultUser);
}
@ApiOperation(value = "用户登录", notes = "用户登录", httpMethod = "GET")
......@@ -53,23 +53,23 @@ public class WorkUserController extends BaseController {
@ApiImplicitParam(name = "source", value = "登录来源:PC/WAP", dataType = "string", required = true)
})
@GetMapping(value = "/login")
public Result<WorkUser> login(String loginName, String password, String source) {
public Result<ResultUser> login(String loginName, String password, String source) {
log.info("WorkUserController[]login[]input.param" + loginName + password + source);
if (StringUtils.isEmpty(loginName) || StringUtils.isEmpty(password) || StringUtils.isEmpty(loginName)) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.INPUT_PARAM_IS_NULL);
}
WorkUser workUser = workUserService.login(loginName, password, source);
return getResult(workUser);
ResultUser resultUser = workUserService.login(loginName, password, source);
return getResult(resultUser);
}
@PutMapping(value = "/changePassword")
public Result<WorkUser> changePassword(Integer userId, String oldPassword, String newPassword) {
public Result<ResultUser> changePassword(Integer userId, String oldPassword, String newPassword) {
log.info("WorkUserController[]changePassword[]input.param{}" + userId + oldPassword + newPassword);
if (userId == null || StringUtils.isEmpty(oldPassword) || StringUtils.isEmpty(newPassword)) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.INPUT_PARAM_IS_NULL);
}
WorkUser workUser = workUserService.changePassword(userId, oldPassword, newPassword);
return getResult(workUser);
ResultUser resultUser = workUserService.changePassword(userId, oldPassword, newPassword);
return getResult(resultUser);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment