package com.hssx.cloudmodel.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.hssx.cloudmodel.constant.Constant;
import com.hssx.cloudmodel.entity.Power;
import com.hssx.cloudmodel.entity.Project;
import com.hssx.cloudmodel.entity.User;
import com.hssx.cloudmodel.entity.vo.ProjectVO;
import com.hssx.cloudmodel.entity.vo.UserVO;
import com.hssx.cloudmodel.mapper.PowerMapper;
import com.hssx.cloudmodel.mapper.ProjectMapper;
import com.hssx.cloudmodel.mapper.UserMapper;
import com.hssx.cloudmodel.service.PowerService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.hssx.cloudmodel.util.HttpRespMsg;
import com.hssx.cloudmodel.util.PageUtil;
import net.sf.jsqlparser.expression.operators.arithmetic.Concat;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
/**
*
* 服务实现类
*
*
* @author 吴涛涛
* @since 2019-08-06
*/
@Service
public class PowerServiceImpl extends ServiceImpl implements PowerService {
@Resource
PowerMapper powerMapper;
@Resource
UserMapper userMapper;
@Resource
ProjectMapper projectMapper;
@Override
public HttpRespMsg getList(UserVO userVO, String token, PageUtil page) {
HttpRespMsg msg = new HttpRespMsg();
List list = new ArrayList<>();
Integer type = 0;
PageHelper.startPage(page.getPageNum(),page.getPageSize());
User user = userMapper.selectOne(new QueryWrapper().eq("head_imgurl", token));
QueryWrapper qw = new QueryWrapper<>();
Integer count = projectMapper.selectCount(qw.eq("manager_id", user.getId()));
BeanUtils.copyProperties(user ,userVO);
if (user != null) {
if (Constant.SYS_PARENT_ID == user.getParentId()) {
//平台超级管理员
msg.setError("对不起你不具备该项权限!");
} else if (Constant.SYS_ID == user.getParentId()) {
//资产方管理员,展示此人创建所有项目对应的权限
list = projectMapper.selectUserPowerList(userVO,type);
} else if (count > 0) {
//项目经理
type = 1;
list = projectMapper.selectUserPowerList(userVO,type);
} else {
//普通用户
msg.setError("对不起你不具备该项权限!");
}
PageInfo pageInfos = new PageInfo<>(list);
msg.data = pageInfos;
} else {
msg.setError("用户不存或没登录!");
}
return msg;
}
@Override
public HttpRespMsg updatePower(UserVO userVO, String token) {
HttpRespMsg msg = new HttpRespMsg();
QueryWrapper qw = new QueryWrapper<>();
User user = userMapper.selectOne(new QueryWrapper().eq("head_imgurl", token));
if(user != null){
// Integer count = projectMapper.selectList(qw.eq("manager_id", user.getId()));
// if(){
//
// }
}else{
msg.setError("用户不存或没登录!");
}
return null;
}
}