提交 410e224a authored 作者: 任建彩's avatar 任建彩

团队

上级 454cc403
......@@ -14,13 +14,15 @@ import lombok.Data;
@Data
@ApiModel(value="DepartmentRequest",description="部门")
public class DepartmentRequest{
@ApiModelProperty("部门id")
private Integer id;
@ApiModelProperty(value = "部门名称")
private String departmentName;
@ApiModelProperty(value = "是否选中 true是 0false")
private Boolean type;
@ApiModelProperty("团队id")
private String teamId;
@ApiModelProperty("关联用户")
private List<SystemAdmin> adminList;
}
package com.zrqx.olive.presale.controller;
import javax.servlet.http.HttpServletRequest;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
......@@ -7,15 +9,18 @@ import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.common.CheckAdminToken;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.github.pagehelper.PageInfo;
import com.zrqx.olive.presale.model.Presale;
import com.zrqx.olive.presale.request.QueryPresaleRequest;
import com.zrqx.olive.presale.request.SaveOrUpdatePresaleRequest;
import com.zrqx.olive.presale.service.PresaleService;
import com.zrqx.olive.project.model.Customer;
import com.zrqx.olive.project.request.QueryCustomerRequest;
import com.zrqx.olive.project.vo.ProjectVo;
import com.zrqx.olive.system.response.SystemAdminResponse;
import com.zrqx.olive.system.service.SystemAdminService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
......@@ -31,11 +36,16 @@ public class PresaleController {
@Autowired
private PresaleService service;
@Autowired
private CheckAdminToken checkAdminToken;
@Autowired
private SystemAdminService systemAdminService;
@ApiOperation(value = "新增/修改", notes = "新增一个")
@RequestMapping(value = "/saveOrUpdate", method = RequestMethod.POST)
public CommonResult<Boolean> save(@RequestBody SaveOrUpdatePresaleRequest form) {
if (!service.saveorupdate(form)) {
public CommonResult<Boolean> save(@RequestBody SaveOrUpdatePresaleRequest form,HttpServletRequest request) throws Exception {
String token = checkAdminToken.getTokenFormRequest(request);
SystemAdminResponse systemAdminResponse = systemAdminService.getInfoByToken(token);
if (!service.saveOrUpdate(form,systemAdminResponse)) {
return CommonResult.failed("添加失败");
}
return CommonResult.success();
......@@ -43,10 +53,11 @@ public class PresaleController {
@ApiOperation(value = "分页查询" , notes ="分页查询")
@RequestMapping(value = "/page", method = RequestMethod.GET)
public CommonResult<PageInfo<Presale>> query(QueryCustomerRequest form, PageParamRequest pageParamRequest){
PageInfo<Presale> list = service.page(form, pageParamRequest);
return CommonResult.success(list);
public CommonResult<CommonPage<Presale>> query(QueryPresaleRequest form, PageParamRequest pageParamRequest){
CommonPage<Presale> presale = CommonPage.restPage(service.page(form, pageParamRequest));
return CommonResult.success(presale);
}
@ApiOperation(value = "查询", notes = "根据ID查询")
@RequestMapping(value = "/getId", method = RequestMethod.GET)
@ApiImplicitParam(name="oid", value="客户ID")
......
......@@ -23,13 +23,13 @@ import lombok.experimental.Accessors;
@ApiModel(value="T_Presale对象", description="售前任务")
public class Presale {
@Id
@TableId(value = "id", type = IdType.ASSIGN_UUID)
@TableId(value = "id", type = IdType.AUTO)
@ApiModelProperty("项目id,新增时不需要填写")
private String id;
@ApiModelProperty("项目Id")
private String projectId;
@ApiModelProperty("所属模块Id")
private String diyTypeId;
private String code;
@ApiModelProperty("任务名称 ")
private String taskName;
@ApiModelProperty("指派给Id")
......
......@@ -24,8 +24,8 @@ public class PresaleRecord {
@TableId(value = "id", type = IdType.ASSIGN_UUID)
@ApiModelProperty("历史记录id,新增时不需要填写")
private String id;
@ApiModelProperty("项目Id")
private String projectId;
@ApiModelProperty("任务Id")
private String presaleId;
@ApiModelProperty("用户id")
private String userId;
@ApiModelProperty("用户名")
......
package com.zrqx.olive.presale.request;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="QueryPresaleRequest对象", description="查询售前管理表")
public class QueryPresaleRequest implements Serializable {
private static final long serialVersionUID=1L;
@ApiModelProperty("项目状态: 1 未完成 2已完成 3已关闭 ")
private String status;
@ApiModelProperty("任务名称、编号、任务描述、指派给 ")
private String name;
@ApiModelProperty("模块code")
private String code;
}
......@@ -2,6 +2,9 @@ package com.zrqx.olive.presale.request;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;
import com.zrqx.olive.presale.model.PresaleFile;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
......@@ -29,7 +32,7 @@ public class SaveOrUpdatePresaleRequest implements Serializable {
@ApiModelProperty("指派给Id")
private Integer adminId;
@ApiModelProperty("指派给")
private Integer admin;
private String admin;
@ApiModelProperty("优先级")
private Integer first;
@ApiModelProperty("预计时间")
......@@ -42,4 +45,6 @@ public class SaveOrUpdatePresaleRequest implements Serializable {
private String endTime;
@ApiModelProperty("项目状态: 1 未完成 2已完成 3已关闭 ")
private String status;
@ApiModelProperty("附件")
private List<PresaleFile> file;
}
package com.zrqx.olive.presale.request;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="SavePresaleRecordRequest对象", description="历史记录表")
public class SavePresaleRecordRequest implements Serializable {
private static final long serialVersionUID=1L;
@ApiModelProperty("id")
private String id;
@ApiModelProperty("用户名")
private String userName;
@ApiModelProperty("描述")
private String describes;
}
......@@ -4,8 +4,9 @@ import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zrqx.olive.presale.model.PresaleRecord;
import com.zrqx.olive.project.model.ProjectRecord;
import com.zrqx.olive.presale.request.SavePresaleRecordRequest;
import com.zrqx.olive.project.vo.ProjectRecordListVo;
import com.zrqx.olive.system.response.SystemAdminResponse;
public interface PresaleRecordService extends IService<PresaleRecord> {
/**
......@@ -18,13 +19,13 @@ public interface PresaleRecordService extends IService<PresaleRecord> {
*/
List<ProjectRecordListVo> list(String oid);
/**
*
* @Title: ProjectRecordService.java
* @Package com.zrqx.sysuser.bg.service.project
* 添加历史记录
* @Title: PresaleRecordService.java
* @Package com.zrqx.olive.presale.service
* @Description: TODO
* @author 任建彩
* @date 2021年7月27
* @date 2021年8月12
*/
boolean saveOrUpdate(ProjectRecord form);
public boolean save(SavePresaleRecordRequest form);
}
package com.zrqx.olive.presale.service;
import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.common.PageParamRequest;
import com.github.pagehelper.PageInfo;
import com.zrqx.olive.presale.model.Presale;
import com.zrqx.olive.presale.request.QueryPresaleRequest;
import com.zrqx.olive.presale.request.SaveOrUpdatePresaleRequest;
import com.zrqx.olive.project.request.QueryCustomerRequest;
import com.zrqx.olive.project.request.QueryProjectRequest;
import com.zrqx.olive.project.request.SaveProjectRequest;
import com.zrqx.olive.project.vo.ProjectListVo;
import com.zrqx.olive.project.vo.ProjectVo;
import com.zrqx.olive.system.response.SystemAdminResponse;
public interface PresaleService extends IService<Presale> {
......@@ -21,7 +18,7 @@ public interface PresaleService extends IService<Presale> {
* @author 任建彩
* @date 2021年7月27日
*/
PageInfo<Presale> page(QueryCustomerRequest form,PageParamRequest pageParam);
List<Presale> page(QueryPresaleRequest form,PageParamRequest pageParam);
/**
* 根据id查询详情
* @Title: StatisticsProjectService.java
......@@ -39,6 +36,6 @@ public interface PresaleService extends IService<Presale> {
* @author 任建彩
* @date 2021年8月11日
*/
boolean saveorupdate(SaveOrUpdatePresaleRequest form);
boolean saveOrUpdate(SaveOrUpdatePresaleRequest form,SystemAdminResponse systemAdminResponse);
}
......@@ -10,15 +10,16 @@ import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zrqx.olive.presale.dao.PresaleRecordDao;
import com.zrqx.olive.presale.model.PresaleRecord;
import com.zrqx.olive.presale.request.SavePresaleRecordRequest;
import com.zrqx.olive.presale.service.PresaleRecordService;
import com.zrqx.olive.project.dao.ProjectRecordDao;
import com.zrqx.olive.project.model.ProjectRecord;
import com.zrqx.olive.project.vo.ProjectRecordListVo;
import com.zrqx.olive.system.response.SystemAdminResponse;
@Service
public class PresaleRecordServiceImpl extends ServiceImpl<PresaleRecordDao, PresaleRecord> implements PresaleRecordService {
@Resource
private ProjectRecordDao dao;
private PresaleRecordDao dao;
@Override
......@@ -28,9 +29,16 @@ public class PresaleRecordServiceImpl extends ServiceImpl<PresaleRecordDao, Pres
}
@Override
public boolean saveOrUpdate(ProjectRecord form) {
form.setUploadTime(new Date());
dao.insert(form);
public boolean save(SavePresaleRecordRequest form) {
//添加历史记录
PresaleRecord record = new PresaleRecord();
record.setDescribes(form.getDescribes());
record.setPresaleId(form.getId());
record.setUserName(form.getUserName());
record.setUploadTime(new Date());
dao.insert(record);
return true;
}
}
......@@ -11,31 +11,36 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.common.CommonPage;
import com.common.PageParamRequest;
import com.enums.ProjectStatusEnum;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.utils.DateUtils;
import com.zrqx.olive.presale.dao.PresaleDao;
import com.zrqx.olive.presale.dao.PresaleFileDao;
import com.zrqx.olive.presale.dao.PresaleRecordDao;
import com.zrqx.olive.presale.model.Presale;
import com.zrqx.olive.presale.model.PresaleFile;
import com.zrqx.olive.presale.request.QueryPresaleRequest;
import com.zrqx.olive.presale.request.SaveOrUpdatePresaleRequest;
import com.zrqx.olive.presale.request.SavePresaleRecordRequest;
import com.zrqx.olive.presale.service.PresaleRecordService;
import com.zrqx.olive.presale.service.PresaleService;
import com.zrqx.olive.project.dao.ProjectFileDao;
import com.zrqx.olive.project.dao.ProjectRecordDao;
import com.zrqx.olive.project.dao.ProjectUserDao;
import com.zrqx.olive.project.model.ProjectFile;
import com.zrqx.olive.project.model.ProjectUser;
import com.zrqx.olive.project.request.QueryCustomerRequest;
import com.zrqx.olive.project.request.QueryProjectRequest;
import com.zrqx.olive.project.vo.ProjectListVo;
import com.zrqx.olive.project.vo.ProjectVo;
import com.zrqx.olive.system.response.SystemAdminResponse;
@Service
public class PresaleServiceImpl extends ServiceImpl<PresaleDao, Presale> implements PresaleService {
@Resource
private PresaleDao dao;
@Autowired
private PresaleFileDao fileDao;
@Autowired
private PresaleRecordDao recordDao;
@Autowired
private PresaleRecordService presaleRecordService;
@Override
public Presale getById(String oid) {
......@@ -46,35 +51,93 @@ public class PresaleServiceImpl extends ServiceImpl<PresaleDao, Presale> implem
if(StringUtils.isNotBlank(oid)){
lambdaQueryWrapper.eq(ProjectUser::getProjectId, oid);
}
/*
* List<ProjectFile> fileList = fileMapper.selectList(lambdaQueryWrapper1);
* vo.setFile(fileList);
*/
return vo;
}
@Override
public boolean saveorupdate(SaveOrUpdatePresaleRequest form) {
public boolean saveOrUpdate(SaveOrUpdatePresaleRequest form,SystemAdminResponse systemAdminResponse) {
// TODO Auto-generated method stub
Presale presale = new Presale();
if(form.getId()==null) {
BeanUtils.copyProperties(form, presale);
if(form.getStartTime()!=null) {
Date startTime = DateUtils.strToDateTime(form.getStartTime(),DateUtils.DATE_FORMAT_YYYY_MM_DD);
presale.setStartTime(startTime);
}
if(form.getEndTime()!=null) {
Date endTime = DateUtils.strToDateTime(form.getEndTime(),DateUtils.DATE_FORMAT_YYYY_MM_DD);
presale.setEndTime(endTime);
}
presale.setUploadTime(new Date());
dao.insert(presale);
}else {
presale = dao.selectById(form.getId());
BeanUtils.copyProperties(form, presale);
if(form.getStartTime()!=null) {
Date startTime = DateUtils.strToDateTime(form.getStartTime(),DateUtils.DATE_FORMAT_YYYY_MM_DD);
presale.setStartTime(startTime);
}
if(form.getEndTime()!=null) {
Date endTime = DateUtils.strToDateTime(form.getEndTime(),DateUtils.DATE_FORMAT_YYYY_MM_DD);
presale.setEndTime(endTime);
}
dao.updateById(presale);
//删除关联附件
QueryWrapper<PresaleFile> file = new QueryWrapper<PresaleFile>();
file.eq("presaleId", presale.getId());
fileDao.delete(file);
}
//添加附件
if(form.getFile()!=null) {
for (PresaleFile presaleFile : form.getFile()) {
presaleFile.setPresaleId(presale.getId());
presaleFile.setUploadTime(new Date());
fileDao.insert(presaleFile);
}
}
return false;
//添加历史记录
SavePresaleRecordRequest request = new SavePresaleRecordRequest();
if(form.getId()==null) {
request.setDescribes("由"+systemAdminResponse.getAccount()+"创建");
}else{
request.setDescribes("由"+systemAdminResponse.getAccount()+"编辑");
}
request.setUserName(systemAdminResponse.getAccount());
request.setId(presale.getId());
presaleRecordService.save(request);
//添加指派历史记录
/*
* if(form.getAdmin()!=null && form.getAdmin()!="") {
* request.setDescribes("由"+systemAdminResponse.getAccount()+"确认,并指派给"+form.
* getAdmin()); request.setId(presale.getId());
* presaleRecordService.save(request); }
*/
return true;
}
@Override
public PageInfo<Presale> page(QueryCustomerRequest form, PageParamRequest pageParam) {
// TODO Auto-generated method stub
return null;
public List<Presale> page(QueryPresaleRequest form, PageParamRequest pageParam) {
PageHelper.startPage(pageParam.getPage(), pageParam.getLimit());
if(pageParam.getOrderBy()==null) {
pageParam.setOrderBy("id desc");
}
QueryWrapper<Presale> qw=new QueryWrapper<Presale>();
if(StringUtils.isNotBlank(form.getStatus())) {
qw.eq("status", form.getStatus());
}
if(StringUtils.isNotBlank(form.getName())) {
qw.like("task_name", form.getName());
qw.or().like("admin", form.getName());
qw.or().like("describes", form.getName());
qw.or().likeRight("id", form.getName());
}
if(StringUtils.isNotBlank(form.getCode())) {
qw.likeRight("code", form.getCode());
}
List<Presale> list = dao.selectList(qw);
return list;
}
}
......@@ -19,7 +19,6 @@ import com.common.CheckAdminToken;
import com.common.CommonPage;
import com.common.CommonResult;
import com.common.PageParamRequest;
import com.utils.CrmebUtil;
import com.zrqx.olive.dept.model.Department;
import com.zrqx.olive.dept.service.DepartmentService;
import com.zrqx.olive.dept.vo.DepartmentListVO;
......@@ -28,13 +27,15 @@ import com.zrqx.olive.project.model.Team;
import com.zrqx.olive.project.model.TeamRecord;
import com.zrqx.olive.project.request.QueryTeamMemberRequest;
import com.zrqx.olive.project.request.QueryTeamRequest;
import com.zrqx.olive.project.request.QueryUpholdMemberRequest;
import com.zrqx.olive.project.request.SaveTeamRequest;
import com.zrqx.olive.project.request.UpdateTeamMemberRequest;
import com.zrqx.olive.project.request.UpdateTeamMemberListRequest;
import com.zrqx.olive.project.request.UpdateTeamRequest;
import com.zrqx.olive.project.service.StatisticsProjectService;
import com.zrqx.olive.project.service.TeamMemberRelationService;
import com.zrqx.olive.project.service.TeamRecordService;
import com.zrqx.olive.project.service.TeamService;
import com.zrqx.olive.project.vo.MemberListVo;
import com.zrqx.olive.project.vo.ProjectVo;
import com.zrqx.olive.project.vo.TeamMemberListVo;
import com.zrqx.olive.project.vo.TeamRecordListVo;
......@@ -141,7 +142,6 @@ public class TeamController {
if(department.getId()!=null){
qw.eq("department_id", department.getId());
}
List<SystemAdmin> list2 = systemAdminService.list(qw);
department.setAdminList(list2);
}
......@@ -157,23 +157,28 @@ public class TeamController {
}
@ApiOperation(value = "批量删除成员", notes = "批量删除成员")
@RequestMapping(value = "/delete/{ids}", method = RequestMethod.GET)
public CommonResult<String> delete(@PathVariable String ids){
if(relationService.removeByIds(CrmebUtil.stringToArray(ids))){
@RequestMapping(value = "/delete", method = RequestMethod.GET)
public CommonResult<String> delete(@PathVariable List<String> ids){
if(relationService.removeByIds(ids)){
return CommonResult.success();
}else{
return CommonResult.failed();
}
}
@ApiOperation(value = "维护成员", notes = "维护成员")
@ApiOperation(value = "确认维护成员", notes = "确认维护成员")
@RequestMapping(value = "/updateMember", method = RequestMethod.POST)
public CommonResult<String> updateMember(@RequestBody UpdateTeamMemberRequest request){
public CommonResult<String> updateMember(@RequestBody UpdateTeamMemberListRequest request){
if(relationService.updateMember(request)){
return CommonResult.success();
}else{
return CommonResult.failed();
}
}
@ApiOperation(value = "维护成员列表", notes = "维护成员列表")
@RequestMapping(value = "/upholdMember", method = RequestMethod.GET)
public CommonResult<MemberListVo> upholdMember(QueryUpholdMemberRequest request){
MemberListVo vo = relationService.upholdMember(request);
return CommonResult.success(vo);
}
}
......@@ -14,7 +14,7 @@ public interface ProjectUserDao extends BaseMapper<ProjectUser> {
+ "</script>")
int deleteByEntity(String id);
@Select("<script>"
+ "select userId FROM t_project_user where project_id = #{oid} "
+ "select user_id FROM t_project_user where project_id = #{oid} "
+ "</script>")
Integer[] userList(String oid);
......
......@@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zrqx.olive.project.model.Team;
import com.zrqx.olive.project.request.QueryTeamRequest;
import com.zrqx.olive.project.vo.TeamListVo;
import com.zrqx.olive.project.vo.TeamVo;
@Mapper
public interface TeamDao extends BaseMapper<Team> {
......@@ -22,6 +23,14 @@ public interface TeamDao extends BaseMapper<Team> {
+ "</if>"
+ "</script>")
List<TeamListVo> query(@Param("form")QueryTeamRequest form);
@Select("<script>"
+ "SELECT id,department_id,department_name FROM t_team where 1=1 "
// 项目ID
+ "<if test = 'projectId!=\"\" and projectId!=null '> "
+ " AND project_id = #{projectId} "
+ "</if>"
+ "</script>")
List<TeamVo> getProjectId(String projectId);
......
......@@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zrqx.olive.project.model.TeamMemberRelation;
import com.zrqx.olive.project.request.QueryTeamMemberRequest;
import com.zrqx.olive.project.vo.TeamMemberListVo;
import com.zrqx.olive.project.vo.TeamMemberVo;
@Mapper
......@@ -36,6 +37,15 @@ public interface TeamMemberRelationDao extends BaseMapper<TeamMemberRelation> {
+ " order by upload_time desc"
+ "</script>")
List<TeamMemberListVo> getByMember(@Param("form")QueryTeamMemberRequest form);
@Select("<script>"
+ "SELECT id,account,roleName from t_team_member_relation t1 "
// 项目id
+ "<if test = 'id!=\"\" and id !=null'> "
+ "AND t1.team_id = #{id} "
+ "</if>"
+ " order by upload_time desc"
+ "</script>")
List<TeamMemberVo> getTeamId(String id,Integer departmentId);
......
package com.zrqx.olive.project.model;
import java.math.BigDecimal;
import java.util.Date;
import org.springframework.data.annotation.Id;
import org.springframework.data.annotation.Transient;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
......@@ -26,6 +28,8 @@ public class TeamMemberRelation {
private String id;
@ApiModelProperty(value = "用户id" )
private Integer accountId;
@ApiModelProperty("部门id")
private Integer departmentId;
@ApiModelProperty(value = "角色名称" )
private String roleName;
@ApiModelProperty("项目Id")
......@@ -33,10 +37,13 @@ public class TeamMemberRelation {
@ApiModelProperty(value = "团队id" )
private String teamId;
@ApiModelProperty("总工时")
private float total;
private BigDecimal total;
@ApiModelProperty("消耗")
private float consume;
private BigDecimal consume;
@ApiModelProperty("上传时间")
private Date uploadTime;
@Transient
@ApiModelProperty(value = "是否选中 true是 0false")
private Boolean type;
}
package com.zrqx.olive.project.request;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="QueryUpholdMemberRequest对象", description="查询成员")
public class QueryUpholdMemberRequest {
@ApiModelProperty("项目Id")
private String projectId;
@ApiModelProperty("团队Id")
private String teamId;
}
package com.zrqx.olive.project.request;
import java.io.Serializable;
import java.util.List;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="UpdateTeamMemberListRequest对象", description="维护成员")
public class UpdateTeamMemberListRequest implements Serializable {
private static final long serialVersionUID=1L;
@ApiModelProperty("维护成功")
private List<UpdateTeamMemberRequest> teamMemberList;
}
......@@ -5,7 +5,9 @@ import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zrqx.olive.project.model.TeamMemberRelation;
import com.zrqx.olive.project.request.QueryTeamMemberRequest;
import com.zrqx.olive.project.request.UpdateTeamMemberRequest;
import com.zrqx.olive.project.request.QueryUpholdMemberRequest;
import com.zrqx.olive.project.request.UpdateTeamMemberListRequest;
import com.zrqx.olive.project.vo.MemberListVo;
import com.zrqx.olive.project.vo.TeamMemberListVo;
public interface TeamMemberRelationService extends IService<TeamMemberRelation> {
......@@ -26,6 +28,15 @@ public interface TeamMemberRelationService extends IService<TeamMemberRelation>
* @author 任建彩
* @date 2021年8月6日
*/
boolean updateMember(UpdateTeamMemberRequest request);
boolean updateMember(UpdateTeamMemberListRequest request);
/**
* 维护成员列表
* @Title: TeamMemberRelationService.java
* @Package com.zrqx.olive.project.service
* @Description: TODO
* @author 任建彩
* @date 2021年8月12日
*/
MemberListVo upholdMember(QueryUpholdMemberRequest request);
}
package com.zrqx.olive.project.service.impl;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.Resource;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zrqx.olive.project.dao.TeamDao;
import com.zrqx.olive.project.dao.TeamMemberRelationDao;
import com.zrqx.olive.project.model.Team;
import com.zrqx.olive.project.model.TeamMemberRelation;
import com.zrqx.olive.project.request.QueryTeamMemberRequest;
import com.zrqx.olive.project.request.QueryUpholdMemberRequest;
import com.zrqx.olive.project.request.UpdateTeamMemberListRequest;
import com.zrqx.olive.project.request.UpdateTeamMemberRequest;
import com.zrqx.olive.project.service.TeamMemberRelationService;
import com.zrqx.olive.project.vo.MemberListVo;
import com.zrqx.olive.project.vo.TeamMemberListVo;
import com.zrqx.olive.project.vo.TeamMemberVo;
import com.zrqx.olive.project.vo.TeamVo;
import com.zrqx.olive.system.dao.SystemAdminDao;
import com.zrqx.olive.system.dao.SystemRoleDao;
import com.zrqx.olive.system.model.SystemAdmin;
import com.zrqx.olive.system.model.SystemRole;
@Service
public class TeamMemberRelationServiceImpl extends ServiceImpl<TeamMemberRelationDao, TeamMemberRelation> implements TeamMemberRelationService {
@Resource
private TeamMemberRelationDao relationDao;
@Autowired
private SystemRoleDao roleDao;
@Autowired
private SystemAdminDao systemAdminDao;
@Autowired
private TeamDao teamDao;
@Override
public List<TeamMemberListVo> getByMember(QueryTeamMemberRequest request) {
List<TeamMemberListVo> list =relationDao.getByMember(request);
......@@ -27,12 +49,62 @@ public class TeamMemberRelationServiceImpl extends ServiceImpl<TeamMemberRelatio
}
@Override
public boolean updateMember(UpdateTeamMemberRequest request) {
// TODO Auto-generated method stub
public boolean updateMember(UpdateTeamMemberListRequest form) {
List<UpdateTeamMemberRequest> list = form.getTeamMemberList();
if(list!=null && list.size()>0) {
for (UpdateTeamMemberRequest request : list) {
if(request.getId()==null) {
TeamMemberRelation relation = new TeamMemberRelation();
relation.setAccountId(relation.getAccountId());
if(request.getRoleName()==null) {
SystemAdmin systemAdmin = systemAdminDao.selectById(relation.getAccountId());
SystemRole role = roleDao.selectById(systemAdmin.getRoles());
relation.setRoleName(role.getRoleName());
}else {
relation.setRoleName(request.getRoleName());
}
relation.setProjectId(request.getProjectId());
relation.setTeamId(request.getTeamId());
relationDao.insert(relation);
}else {
TeamMemberRelation relation = new TeamMemberRelation();
relation.setAccountId(relation.getAccountId());
if(request.getRoleName()==null) {
SystemAdmin systemAdmin = systemAdminDao.selectById(relation.getAccountId());
SystemRole role = roleDao.selectById(systemAdmin.getRoles());
relation.setRoleName(role.getRoleName());
}else {
relation.setRoleName(request.getRoleName());
}
relation.setProjectId(request.getProjectId());
relation.setTeamId(request.getTeamId());
relationDao.updateById(relation);
}
}
}
return true;
}
@Override
public MemberListVo upholdMember(QueryUpholdMemberRequest request) {
List<Object> list = new ArrayList<Object>();
MemberListVo vo= new MemberListVo();
if(StringUtils.isNotBlank(request.getProjectId())) {
QueryWrapper<Team> qw = new QueryWrapper<Team>();
qw.eq("project_id", request.getProjectId());
List<TeamVo> teamList = teamDao.getProjectId(request.getProjectId());
if(teamList!=null && teamList.size()>0) {
for (TeamVo team : teamList) {
List<TeamMemberVo> teamMemberList = relationDao.getTeamId(team.getId(),team.getDepartmentId());
team.setTeamMemberList(teamMemberList);
}
}
vo.setTeamList(teamList);
}
return vo;
}
......
......@@ -79,11 +79,12 @@ public class TeamServiceImpl extends ServiceImpl<TeamDao, Team> implements Team
if(adminList.get(i).getType()!=null) {
if(adminList.get(i).getType()==true) {
TeamMemberRelation relation = new TeamMemberRelation();
relation.setAccountId(systemAdminResponse.getId());
SystemRole role = roleDao.selectById(systemAdminResponse.getRoles());
relation.setAccountId(adminList.get(i).getId());
SystemRole role = roleDao.selectById(adminList.get(i).getRoles());
if(role!=null) {
relation.setRoleName(role.getRoleName());
}
relation.setDepartmentId(dept.getId());
relation.setProjectId(saveTeamRequest.getProjectId());
relation.setTeamId(team.getId());
dao.insert(relation);
......
package com.zrqx.olive.project.vo;
import java.util.List;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class MemberListVo {
@ApiModelProperty(value = "项目id" )
private String id;
@ApiModelProperty("团队id,新增时不需要填写")
private List<TeamVo> teamList;
}
package com.zrqx.olive.project.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class TeamMemberVo {
@ApiModelProperty("成员id,新增时不需要填写")
private String id;
@ApiModelProperty(value = "后台管理员姓名")
private String account;
@ApiModelProperty(value = "后台管理员权限(menus_id)")
private String roleName;
}
package com.zrqx.olive.project.vo;
import java.util.List;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class TeamVo {
@ApiModelProperty("团队id,新增时不需要填写")
private String id;
@ApiModelProperty("部门id")
private Integer departmentId;
@ApiModelProperty(value = "部门名称" )
private String departmentName;
@ApiModelProperty("关联用户")
private List<TeamMemberVo> teamMemberList;
}
package com.zrqx.olive.project.vo;
import java.util.List;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class upholdMemberListVo {
@ApiModelProperty("项目id,新增时不需要填写")
private String id;
@ApiModelProperty(value = "成员" )
private List<MemberListVo> memberList;
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论