Browse Source

20201028_测试服务器1.0

tiaosheng
zy_Java 5 years ago
parent
commit
b88fc3dfa3
  1. 43
      mt/src/main/java/com/ccsens/mt/api/ProvinceController.java
  2. 56
      mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java
  3. 12
      mt/src/main/java/com/ccsens/mt/bean/po/CompeteCompany.java
  4. 48
      mt/src/main/java/com/ccsens/mt/bean/po/CompeteCompanyExample.java
  5. 11
      mt/src/main/java/com/ccsens/mt/bean/po/CompeteProject.java
  6. 60
      mt/src/main/java/com/ccsens/mt/bean/po/CompeteProjectExample.java
  7. 33
      mt/src/main/java/com/ccsens/mt/bean/vo/ProvinceCompeteVo.java
  8. 36
      mt/src/main/java/com/ccsens/mt/persist/dao/CompeteCompanyDao.java
  9. 43
      mt/src/main/java/com/ccsens/mt/service/IProvinceService.java
  10. 94
      mt/src/main/java/com/ccsens/mt/service/ProvinceService.java
  11. 115
      mt/src/main/resources/mapper_dao/CompeteCompanyDao.xml
  12. 28
      mt/src/main/resources/mapper_raw/CompeteCompanyMapper.xml
  13. 25
      mt/src/main/resources/mapper_raw/CompeteProjectMapper.xml
  14. 8
      tall/src/main/java/com/ccsens/tall/persist/dao/ProRoleDao.java
  15. 15
      tall/src/main/java/com/ccsens/tall/service/IProRoleService.java
  16. 9
      tall/src/main/java/com/ccsens/tall/service/ProRoleService.java
  17. 29
      tall/src/main/java/com/ccsens/tall/web/RoleController.java
  18. 4
      tall/src/main/resources/application.yml
  19. 15
      tall/src/main/resources/mapper_dao/ProRoleDao.xml

43
mt/src/main/java/com/ccsens/mt/api/ProvinceController.java

@ -2,6 +2,7 @@ package com.ccsens.mt.api;
import com.ccsens.cloudutil.annotation.MustLogin; import com.ccsens.cloudutil.annotation.MustLogin;
import com.ccsens.mt.bean.dto.CompeteDto; import com.ccsens.mt.bean.dto.CompeteDto;
import com.ccsens.mt.bean.dto.ProvinceCompeteDto;
import com.ccsens.mt.bean.vo.CompeteVo; import com.ccsens.mt.bean.vo.CompeteVo;
import com.ccsens.mt.bean.vo.ProvinceCompeteVo; import com.ccsens.mt.bean.vo.ProvinceCompeteVo;
import com.ccsens.mt.service.IProvinceService; import com.ccsens.mt.service.IProvinceService;
@ -18,6 +19,7 @@ import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.List;
/** /**
* @author * @author
@ -40,4 +42,45 @@ public class ProvinceController {
return JsonResponse.newInstance().ok(competeOverview); return JsonResponse.newInstance().ok(competeOverview);
} }
@MustLogin
@ApiOperation(value = "根据组别查找本单位所有注册的选手", notes = "")
@RequestMapping(value = "/group/player", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<List<ProvinceCompeteVo.GroupAndPlayer>> queryPlayerByGroupId(
@ApiParam @Validated @RequestBody QueryDto<ProvinceCompeteDto.QueryPlayerByGroup> params) {
log.info("根据组别查找本单位所有注册的选手:{}",params);
List<ProvinceCompeteVo.GroupAndPlayer> groupAndPlayers = provinceService.queryPlayerByGroupId(params.getParam(),params.getUserId());
log.info("根据组别查找本单位所有注册的选手:{}",groupAndPlayers);
return JsonResponse.newInstance().ok(groupAndPlayers);
}
@MustLogin
@ApiOperation(value = "根据大赛id查找所有的一级项目", notes = "")
@RequestMapping(value = "/first/project", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<List<ProvinceCompeteVo.FirstProject>> queryFirstProjectByCompeteTimeId(
@ApiParam @Validated @RequestBody QueryDto<CompeteDto.CompeteTime> params) {
log.info("查找所有的一级项目:{}",params);
List<ProvinceCompeteVo.FirstProject> projectList = provinceService.queryFirstProjectByCompeteTimeId(params.getParam(),params.getUserId());
log.info("查找所有的一级项目:{}",projectList);
return JsonResponse.newInstance().ok(projectList);
}
// @MustLogin
// @ApiOperation(value = "根据一级项目id查找二级比赛项目的信息", notes = "")
// @RequestMapping(value = "/second/project", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
// public JsonResponse<List<CompeteVo.CompeteProject>> queryProjectByFirstProject(
// @ApiParam @Validated @RequestBody QueryDto<CompeteDto.CompeteTime> params) {
// log.info("查找二级比赛项目的信息:{}",params);
// List<CompeteVo.CompeteProject> projectList = provinceService.queryProjectByCompeteTimeId(params.getParam(),params.getUserId());
// log.info("查找二级比赛项目的信息:{}",projectList);
// return JsonResponse.newInstance().ok(projectList);
// }
@MustLogin
@ApiOperation(value = "新加/修改参赛人员", notes = "")
@RequestMapping(value = "/save/player", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse saveOrUpdatePlayer( @ApiParam QueryDto<ProvinceCompeteDto.PlayerInfo> params) {
log.info("新加/修改参赛人员:{}",params);
provinceService.saveOrUpdatePlayer(params.getParam(),params.getUserId());
return JsonResponse.newInstance().ok();
}
} }

56
mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java

@ -0,0 +1,56 @@
package com.ccsens.mt.bean.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.servlet.http.Part;
import javax.validation.constraints.NotNull;
/**
* @author
*/
@Data
public class ProvinceCompeteDto {
@Data
@ApiModel("通过组别查找本单位注册的选手")
public static class QueryPlayerByGroup{
@NotNull
@ApiModelProperty("参赛单位id")
private Long companyId;
@ApiModelProperty("组别id")
private Long groupId;
@ApiModelProperty("项目id")
private Long projectId;
}
@Data
@ApiModel("添加或修改选手")
public static class PlayerInfo{
@ApiModelProperty("选手id")
private Long playerId ;
@ApiModelProperty("参赛单位id")
private Long competeId;
@ApiModelProperty("组别id")
private Long groupId;
@ApiModelProperty("选手姓名")
private String playerName;
@ApiModelProperty("性别")
private int gender;
@ApiModelProperty("身份证号")
private String idCard;
@ApiModelProperty("身份证正面照片")
private Part idCardFront;
@ApiModelProperty("身份证反面照片")
private Part idCardBack;
@ApiModelProperty("证件照")
private Part idPhone;
@ApiModelProperty("学籍照片")
private Part studentRecord;
@ApiModelProperty("体检证明照片")
private Part healthRecord;
@ApiModelProperty("保险证明照片")
private Part insuranceRecord;
}
}

12
mt/src/main/java/com/ccsens/mt/bean/po/CompeteCompany.java

@ -22,7 +22,7 @@ public class CompeteCompany implements Serializable {
private Integer leaderNum; private Integer leaderNum;
private Integer judgmentNum; private Integer coachNum;
private Byte authorization; private Byte authorization;
@ -106,12 +106,12 @@ public class CompeteCompany implements Serializable {
this.leaderNum = leaderNum; this.leaderNum = leaderNum;
} }
public Integer getJudgmentNum() { public Integer getCoachNum() {
return judgmentNum; return coachNum;
} }
public void setJudgmentNum(Integer judgmentNum) { public void setCoachNum(Integer coachNum) {
this.judgmentNum = judgmentNum; this.coachNum = coachNum;
} }
public Byte getAuthorization() { public Byte getAuthorization() {
@ -161,7 +161,7 @@ public class CompeteCompany implements Serializable {
sb.append(", userId=").append(userId); sb.append(", userId=").append(userId);
sb.append(", joinNum=").append(joinNum); sb.append(", joinNum=").append(joinNum);
sb.append(", leaderNum=").append(leaderNum); sb.append(", leaderNum=").append(leaderNum);
sb.append(", judgmentNum=").append(judgmentNum); sb.append(", coachNum=").append(coachNum);
sb.append(", authorization=").append(authorization); sb.append(", authorization=").append(authorization);
sb.append(", createdAt=").append(createdAt); sb.append(", createdAt=").append(createdAt);
sb.append(", updatedAt=").append(updatedAt); sb.append(", updatedAt=").append(updatedAt);

48
mt/src/main/java/com/ccsens/mt/bean/po/CompeteCompanyExample.java

@ -675,63 +675,63 @@ public class CompeteCompanyExample {
return (Criteria) this; return (Criteria) this;
} }
public Criteria andJudgmentNumIsNull() { public Criteria andCoachNumIsNull() {
addCriterion("judgment_num is null"); addCriterion("coach_num is null");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andJudgmentNumIsNotNull() { public Criteria andCoachNumIsNotNull() {
addCriterion("judgment_num is not null"); addCriterion("coach_num is not null");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andJudgmentNumEqualTo(Integer value) { public Criteria andCoachNumEqualTo(Integer value) {
addCriterion("judgment_num =", value, "judgmentNum"); addCriterion("coach_num =", value, "coachNum");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andJudgmentNumNotEqualTo(Integer value) { public Criteria andCoachNumNotEqualTo(Integer value) {
addCriterion("judgment_num <>", value, "judgmentNum"); addCriterion("coach_num <>", value, "coachNum");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andJudgmentNumGreaterThan(Integer value) { public Criteria andCoachNumGreaterThan(Integer value) {
addCriterion("judgment_num >", value, "judgmentNum"); addCriterion("coach_num >", value, "coachNum");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andJudgmentNumGreaterThanOrEqualTo(Integer value) { public Criteria andCoachNumGreaterThanOrEqualTo(Integer value) {
addCriterion("judgment_num >=", value, "judgmentNum"); addCriterion("coach_num >=", value, "coachNum");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andJudgmentNumLessThan(Integer value) { public Criteria andCoachNumLessThan(Integer value) {
addCriterion("judgment_num <", value, "judgmentNum"); addCriterion("coach_num <", value, "coachNum");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andJudgmentNumLessThanOrEqualTo(Integer value) { public Criteria andCoachNumLessThanOrEqualTo(Integer value) {
addCriterion("judgment_num <=", value, "judgmentNum"); addCriterion("coach_num <=", value, "coachNum");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andJudgmentNumIn(List<Integer> values) { public Criteria andCoachNumIn(List<Integer> values) {
addCriterion("judgment_num in", values, "judgmentNum"); addCriterion("coach_num in", values, "coachNum");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andJudgmentNumNotIn(List<Integer> values) { public Criteria andCoachNumNotIn(List<Integer> values) {
addCriterion("judgment_num not in", values, "judgmentNum"); addCriterion("coach_num not in", values, "coachNum");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andJudgmentNumBetween(Integer value1, Integer value2) { public Criteria andCoachNumBetween(Integer value1, Integer value2) {
addCriterion("judgment_num between", value1, value2, "judgmentNum"); addCriterion("coach_num between", value1, value2, "coachNum");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andJudgmentNumNotBetween(Integer value1, Integer value2) { public Criteria andCoachNumNotBetween(Integer value1, Integer value2) {
addCriterion("judgment_num not between", value1, value2, "judgmentNum"); addCriterion("coach_num not between", value1, value2, "coachNum");
return (Criteria) this; return (Criteria) this;
} }

11
mt/src/main/java/com/ccsens/mt/bean/po/CompeteProject.java

@ -30,6 +30,8 @@ public class CompeteProject implements Serializable {
private Byte recStatus; private Byte recStatus;
private Long competeTimeId;
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
public Long getId() { public Long getId() {
@ -136,6 +138,14 @@ public class CompeteProject implements Serializable {
this.recStatus = recStatus; this.recStatus = recStatus;
} }
public Long getCompeteTimeId() {
return competeTimeId;
}
public void setCompeteTimeId(Long competeTimeId) {
this.competeTimeId = competeTimeId;
}
@Override @Override
public String toString() { public String toString() {
StringBuilder sb = new StringBuilder(); StringBuilder sb = new StringBuilder();
@ -155,6 +165,7 @@ public class CompeteProject implements Serializable {
sb.append(", createdAt=").append(createdAt); sb.append(", createdAt=").append(createdAt);
sb.append(", updatedAt=").append(updatedAt); sb.append(", updatedAt=").append(updatedAt);
sb.append(", recStatus=").append(recStatus); sb.append(", recStatus=").append(recStatus);
sb.append(", competeTimeId=").append(competeTimeId);
sb.append("]"); sb.append("]");
return sb.toString(); return sb.toString();
} }

60
mt/src/main/java/com/ccsens/mt/bean/po/CompeteProjectExample.java

@ -894,6 +894,66 @@ public class CompeteProjectExample {
addCriterion("rec_status not between", value1, value2, "recStatus"); addCriterion("rec_status not between", value1, value2, "recStatus");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andCompeteTimeIdIsNull() {
addCriterion("compete_time_id is null");
return (Criteria) this;
}
public Criteria andCompeteTimeIdIsNotNull() {
addCriterion("compete_time_id is not null");
return (Criteria) this;
}
public Criteria andCompeteTimeIdEqualTo(Long value) {
addCriterion("compete_time_id =", value, "competeTimeId");
return (Criteria) this;
}
public Criteria andCompeteTimeIdNotEqualTo(Long value) {
addCriterion("compete_time_id <>", value, "competeTimeId");
return (Criteria) this;
}
public Criteria andCompeteTimeIdGreaterThan(Long value) {
addCriterion("compete_time_id >", value, "competeTimeId");
return (Criteria) this;
}
public Criteria andCompeteTimeIdGreaterThanOrEqualTo(Long value) {
addCriterion("compete_time_id >=", value, "competeTimeId");
return (Criteria) this;
}
public Criteria andCompeteTimeIdLessThan(Long value) {
addCriterion("compete_time_id <", value, "competeTimeId");
return (Criteria) this;
}
public Criteria andCompeteTimeIdLessThanOrEqualTo(Long value) {
addCriterion("compete_time_id <=", value, "competeTimeId");
return (Criteria) this;
}
public Criteria andCompeteTimeIdIn(List<Long> values) {
addCriterion("compete_time_id in", values, "competeTimeId");
return (Criteria) this;
}
public Criteria andCompeteTimeIdNotIn(List<Long> values) {
addCriterion("compete_time_id not in", values, "competeTimeId");
return (Criteria) this;
}
public Criteria andCompeteTimeIdBetween(Long value1, Long value2) {
addCriterion("compete_time_id between", value1, value2, "competeTimeId");
return (Criteria) this;
}
public Criteria andCompeteTimeIdNotBetween(Long value1, Long value2) {
addCriterion("compete_time_id not between", value1, value2, "competeTimeId");
return (Criteria) this;
}
} }
public static class Criteria extends GeneratedCriteria { public static class Criteria extends GeneratedCriteria {

33
mt/src/main/java/com/ccsens/mt/bean/vo/ProvinceCompeteVo.java

@ -4,7 +4,8 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotNull; import java.util.List;
/** /**
* @author * @author
@ -25,4 +26,34 @@ public class ProvinceCompeteVo {
@ApiModelProperty("当前添加的参赛人员的人数") @ApiModelProperty("当前添加的参赛人员的人数")
private int playerNum; private int playerNum;
} }
@Data
@ApiModel("查找组别和组别下的选手信息")
public static class GroupAndPlayer{
@ApiModelProperty("组别id")
private Long groupId;
@ApiModelProperty("组别名字")
private String groupName;
@ApiModelProperty("组别名字")
private List<PlayerInfoByGroup> playerList;
}
@Data
@ApiModel("组别下选手信息")
public static class PlayerInfoByGroup{
@ApiModelProperty("选手id")
private Long playerId;
@ApiModelProperty("选手名称")
private String playerName;
@ApiModelProperty("是否参加了本项目")
private int joinProject;
}
@Data
@ApiModel("查找一级比赛项目信息")
public static class FirstProject {
@ApiModelProperty("一级项目id")
private Long parentProjectId;
@ApiModelProperty("一级项目名字")
private String parentProjectName;
}
} }

36
mt/src/main/java/com/ccsens/mt/persist/dao/CompeteCompanyDao.java

@ -1,14 +1,48 @@
package com.ccsens.mt.persist.dao; package com.ccsens.mt.persist.dao;
import com.ccsens.mt.bean.dto.ProvinceCompeteDto;
import com.ccsens.mt.bean.vo.CompeteVo;
import com.ccsens.mt.bean.vo.ProvinceCompeteVo; import com.ccsens.mt.bean.vo.ProvinceCompeteVo;
import com.ccsens.mt.persist.mapper.CompeteCompanyMapper; import com.ccsens.mt.persist.mapper.CompeteCompanyMapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List;
/** /**
* @author * @author
*/ */
@Repository @Repository
public interface CompeteCompanyDao extends CompeteCompanyMapper { public interface CompeteCompanyDao extends CompeteCompanyMapper {
ProvinceCompeteVo.CompeteOverview getCompanyOverview(Long competeTimeId, Long userId); /**
* 查找当前用户填写的信息的概览
* @param competeTimeId 大赛id
* @param userId userId
* @return 返回信息概览
*/
ProvinceCompeteVo.CompeteOverview getCompanyOverview(@Param("competeTimeId")Long competeTimeId, @Param("userId")Long userId);
/**
* 通过组别id查询选手信息
* @param companyId 单位id
* @param groupId 组别id
* @param projectId 项目id
* @return 返回选手信息
*/
List<ProvinceCompeteVo.GroupAndPlayer> queryPlayerByGroupId(@Param("companyId")Long companyId,@Param("groupId")Long groupId,@Param("projectId")Long projectId);
/**
* 查找大赛所有的比赛项目
* @param competeTimeId 大赛id
* @return 返回所有比赛项目信息
*/
List<CompeteVo.CompeteProject> queryProjectByCompeteTimeId(@Param("competeTimeId")Long competeTimeId);
/**
* 查找一级项目
* @param type 比赛类型
* @return 返回一级项目信息
*/
List<ProvinceCompeteVo.FirstProject> queryFirstProjectByCompeteTimeId(@Param("type")int type);
} }

43
mt/src/main/java/com/ccsens/mt/service/IProvinceService.java

@ -1,17 +1,54 @@
package com.ccsens.mt.service; package com.ccsens.mt.service;
import com.ccsens.mt.bean.dto.CompeteDto; import com.ccsens.mt.bean.dto.CompeteDto;
import com.ccsens.mt.bean.dto.ProvinceCompeteDto;
import com.ccsens.mt.bean.vo.CompeteVo;
import com.ccsens.mt.bean.vo.ProvinceCompeteVo; import com.ccsens.mt.bean.vo.ProvinceCompeteVo;
import java.util.List;
/** /**
* @author * @author
*/ */
public interface IProvinceService { public interface IProvinceService {
/** /**
* 查找当前用户填写的信息的概览 * 查找当前用户填写的信息的概览
* @param param * @param param 大赛id
* @param userId * @param userId userId
* @return * @return 返回当前用户填写的信息的概览
*/ */
ProvinceCompeteVo.CompeteOverview getOverview(CompeteDto.CompeteTime param, Long userId); ProvinceCompeteVo.CompeteOverview getOverview(CompeteDto.CompeteTime param, Long userId);
/**
* 通过组别查找当前单位的选手
* @param param 组别单位信息
* @param userId userId
* @return 返回选手id姓名和是否参赛的信息
*/
List<ProvinceCompeteVo.GroupAndPlayer> queryPlayerByGroupId(ProvinceCompeteDto.QueryPlayerByGroup param, Long userId);
// /**
// * 查找本次大赛所有的项目
// * @param param 大赛id
// * @param userId userId
// * @return 返回比赛项目的信息
// */
// List<ProvinceCompeteVo.FirstProject> queryProjectByCompeteTimeId(CompeteDto.CompeteTime param, Long userId);
/**
* 查找一级项目
* @param param 大赛id
* @param userId userId
* @return 返回一级项目
*/
List<ProvinceCompeteVo.FirstProject> queryFirstProjectByCompeteTimeId(CompeteDto.CompeteTime param, Long userId);
/**
* 添加或修改选手
* @param param 选手信息
* @param userId userId
*/
void saveOrUpdatePlayer(ProvinceCompeteDto.PlayerInfo param, Long userId);
} }

94
mt/src/main/java/com/ccsens/mt/service/ProvinceService.java

@ -1,14 +1,31 @@
package com.ccsens.mt.service; package com.ccsens.mt.service;
import cn.hutool.core.lang.Snowflake;
import cn.hutool.core.util.ObjectUtil;
import com.ccsens.mt.bean.dto.CompeteDto; import com.ccsens.mt.bean.dto.CompeteDto;
import com.ccsens.mt.bean.dto.ProvinceCompeteDto;
import com.ccsens.mt.bean.po.CompeteCompany;
import com.ccsens.mt.bean.po.CompetePlayer;
import com.ccsens.mt.bean.po.CompeteTime;
import com.ccsens.mt.bean.vo.CompeteVo;
import com.ccsens.mt.bean.vo.ProvinceCompeteVo; import com.ccsens.mt.bean.vo.ProvinceCompeteVo;
import com.ccsens.mt.persist.dao.CompeteCompanyDao; import com.ccsens.mt.persist.dao.CompeteCompanyDao;
import com.ccsens.mt.persist.dao.CompeteTimeDao;
import com.ccsens.mt.persist.mapper.CompetePlayerMapper;
import com.ccsens.util.NotSupportedFileTypeException;
import com.ccsens.util.PropUtil;
import com.ccsens.util.UploadFileUtil_Servlet3;
import com.ccsens.util.WebConstant;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.servlet.http.Part;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
/** /**
* @author * @author
@ -19,9 +36,86 @@ import javax.annotation.Resource;
public class ProvinceService implements IProvinceService{ public class ProvinceService implements IProvinceService{
@Resource @Resource
private CompeteCompanyDao competeCompanyDao; private CompeteCompanyDao competeCompanyDao;
@Resource
private Snowflake snowflake;
@Resource
private CompetePlayerMapper playerMapper;
@Resource
private CompeteTimeDao competeTimeDao;
/**
* 查找当前用户填写的信息的概览
*/
@Override @Override
public ProvinceCompeteVo.CompeteOverview getOverview(CompeteDto.CompeteTime param, Long userId) { public ProvinceCompeteVo.CompeteOverview getOverview(CompeteDto.CompeteTime param, Long userId) {
return competeCompanyDao.getCompanyOverview(param.getCompeteTimeId(),userId); return competeCompanyDao.getCompanyOverview(param.getCompeteTimeId(),userId);
} }
/**
* 通过组别id查找本单位的注册选手
*/
@Override
public List<ProvinceCompeteVo.GroupAndPlayer> queryPlayerByGroupId(ProvinceCompeteDto.QueryPlayerByGroup param, Long userId) {
return competeCompanyDao.queryPlayerByGroupId(param.getCompanyId(),param.getGroupId(),param.getProjectId());
}
// /**
// * 查找大赛所有的比赛项目
// */
// @Override
// public List<ProvinceCompeteVo.FirstProject> queryProjectByCompeteTimeId(CompeteDto.CompeteTime param, Long userId) {
// return competeCompanyDao.queryProjectByCompeteTimeId(param.getCompeteTimeId());
// }
/**
* 查找一级项目
*/
@Override
public List<ProvinceCompeteVo.FirstProject> queryFirstProjectByCompeteTimeId(CompeteDto.CompeteTime param, Long userId) {
List<ProvinceCompeteVo.FirstProject> firstProjects = new ArrayList<>();
//根据比赛类型查找大赛id
CompeteTime competeTime = competeTimeDao.selectByPrimaryKey(param.getCompeteTimeId());
if(ObjectUtil.isNotNull(competeTime)){
firstProjects = competeCompanyDao.queryFirstProjectByCompeteTimeId(competeTime.getType());
}
return firstProjects;
}
/**
* 添加或修改选手
*/
@Override
public void saveOrUpdatePlayer(ProvinceCompeteDto.PlayerInfo param, Long userId) {
//判断选手id是否为空
if(ObjectUtil.isNull(param.getPlayerId())){
//id为空,新加一个选手
CompetePlayer player = new CompetePlayer();
player.setId(snowflake.nextId());
player.setName(param.getPlayerName());
player.setGender((byte) param.getGender());
player.setIdCard(param.getIdCard());
player.setCompanyId(param.getCompeteId());
player.setCompeteGroupId(param.getGroupId());
//添加身份证正面照片
}else {
//否则修改选手信息
}
}
/**
* 将上传的图片信息保存并在数据库添加记录
*/
private Long uploadFile(Part file) throws Exception {
//1.上传文件
String allowedExts = "jpg,jpeg,png";
String dir = PropUtil.path;
String path = UploadFileUtil_Servlet3.uploadFile(file, allowedExts, dir);
log.info(dir+""+path);
//获取文件路径,文件名,和文件大小
String filePath = WebConstant.UPLOAD_PATH_PROJECT + File.separator + path;
String name = UploadFileUtil_Servlet3.getFileNameByPart(file);
//导入数据库
return null;
}
} }

115
mt/src/main/resources/mapper_dao/CompeteCompanyDao.xml

@ -2,7 +2,122 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ccsens.mt.persist.dao.CompeteCompanyDao"> <mapper namespace="com.ccsens.mt.persist.dao.CompeteCompanyDao">
<resultMap id="compete_project" type="com.ccsens.mt.bean.vo.CompeteVo$CompeteProject">
<id column="parentProjectId" property="parentProjectId"/>
<result column="parentProjectName" property="parentProjectName"/>
<result column="type" property="type"/>
<collection property="secondProjects" ofType="com.ccsens.mt.bean.vo.CompeteVo$CompeteSecondProject">
<id column="id" property="id"/>
<result column="name" property="name"/>
<result column="team" property="team"/>
<result column="certificate" property="certificate"/>
<result column="memberMin" property="memberMin"/>
<result column="memberMax" property="memberMax"/>
</collection>
</resultMap>
<resultMap id="group_player" type="com.ccsens.mt.bean.vo.ProvinceCompeteVo$GroupAndPlayer">
<id column="groupId" property="groupId"/>
<result column="groupName" property="groupName"/>
<collection property="playerList" ofType="com.ccsens.mt.bean.vo.ProvinceCompeteVo$PlayerInfoByGroup">
<id column="playerId" property="playerId"/>
<result column="playerName" property="playerName"/>
<result column="joinProject" property="joinProject"/>
</collection>
</resultMap>
<select id="getCompanyOverview" resultType="com.ccsens.mt.bean.vo.ProvinceCompeteVo$CompeteOverview"> <select id="getCompanyOverview" resultType="com.ccsens.mt.bean.vo.ProvinceCompeteVo$CompeteOverview">
SELECT
cc.id as companyId,
cc.`name` as companyName,
(SELECT count(id) FROM t_compete_coach WHERE cc.id = company_id and identity = 1 and rec_status = 0) as coachNum,
(SELECT count(id) FROM t_compete_coach WHERE cc.id = company_id and identity = 0 and rec_status = 0) as guideNum,
(SELECT count(id) FROM t_compete_player WHERE cc.id = company_id and rec_status = 0) as playerNum
FROM
t_compete_company cc
WHERE
cc.compete_time_id = #{competeTimeId}
and cc.user_id = #{userId}
and cc.rec_status = 0
</select>
<select id="queryPlayerByGroupId" resultMap="group_player">
SELECT
cg.id as groupId,
cg.group_name as groupName,
p.id as playerId,
p.`name` as playerName,
if(pp.id is null and a.mId is null,0,1) as joinProject
FROM
t_compete_group cg
LEFT JOIN t_compete_player p on cg.id = p.group_id
LEFT JOIN t_compete_project_player pp on p.id = pp.player_id and pp.project_id = 1
LEFT JOIN
( SELECT
m.id as mId,
m.player_id as mPlayerId
FROM
t_compete_team t
LEFT JOIN t_compete_team_member m on t.id = m.compete_team_id
WHERE
t.project_id = #{projectId}
and t.rec_status = 0
and m.rec_status = 0
) a on a.mPlayerId = p.id
WHERE
p.company_id = #{companyId}
<if test="groupId != null">
AND p.compete_group_id = #{groupId}
</if>
and p.rec_status = 0
and pp.rec_status = 0
</select>
<select id="queryProjectByCompeteTimeId" resultMap="compete_project">
SELECT
p.id as parentProjectId,
p.`name` as parentProjectName,
p.type as type,
t.id as id,
t.`name` as name,
t.team as team,
t.join_rule as joinRule,
t.certificate as certificate,
t.member_min as memberMin,
t.member_max as memberMax
FROM
t_compete_project p LEFT JOIN
(
SELECT
id,
parent_id,
`name`,
team,
join_rule,
certificate,
member_min,
member_max
FROM
t_compete_project
WHERE
rec_status = 0
and
level = 2
) t on t.parent_id = p.id
WHERE
compete_time_id = #{competeTimeId}
and level = 1
and rec_status = 0
</select>
<select id="queryFirstProjectByCompeteTimeId" resultType="com.ccsens.mt.bean.vo.ProvinceCompeteVo$FirstProject">
SELECT
p.id as parentProjectId,
p.`name` as parentProjectName
FROM
t_compete_project p
where
p.type = #{type}
and p.level = 1
and p.rec_status = 0
</select> </select>
</mapper> </mapper>

28
mt/src/main/resources/mapper_raw/CompeteCompanyMapper.xml

@ -11,7 +11,7 @@
<result column="user_id" jdbcType="BIGINT" property="userId" /> <result column="user_id" jdbcType="BIGINT" property="userId" />
<result column="join_num" jdbcType="INTEGER" property="joinNum" /> <result column="join_num" jdbcType="INTEGER" property="joinNum" />
<result column="leader_num" jdbcType="INTEGER" property="leaderNum" /> <result column="leader_num" jdbcType="INTEGER" property="leaderNum" />
<result column="judgment_num" jdbcType="INTEGER" property="judgmentNum" /> <result column="coach_num" jdbcType="INTEGER" property="coachNum" />
<result column="authorization" jdbcType="TINYINT" property="authorization" /> <result column="authorization" jdbcType="TINYINT" property="authorization" />
<result column="created_at" jdbcType="TIMESTAMP" property="createdAt" /> <result column="created_at" jdbcType="TIMESTAMP" property="createdAt" />
<result column="updated_at" jdbcType="TIMESTAMP" property="updatedAt" /> <result column="updated_at" jdbcType="TIMESTAMP" property="updatedAt" />
@ -77,7 +77,7 @@
</sql> </sql>
<sql id="Base_Column_List"> <sql id="Base_Column_List">
id, name, type, compete_time_id, contacts_name, contacts_phone, user_id, join_num, id, name, type, compete_time_id, contacts_name, contacts_phone, user_id, join_num,
leader_num, judgment_num, authorization, created_at, updated_at, rec_status leader_num, coach_num, authorization, created_at, updated_at, rec_status
</sql> </sql>
<select id="selectByExample" parameterType="com.ccsens.mt.bean.po.CompeteCompanyExample" resultMap="BaseResultMap"> <select id="selectByExample" parameterType="com.ccsens.mt.bean.po.CompeteCompanyExample" resultMap="BaseResultMap">
select select
@ -113,12 +113,12 @@
insert into t_compete_company (id, name, type, insert into t_compete_company (id, name, type,
compete_time_id, contacts_name, contacts_phone, compete_time_id, contacts_name, contacts_phone,
user_id, join_num, leader_num, user_id, join_num, leader_num,
judgment_num, authorization, created_at, coach_num, authorization, created_at,
updated_at, rec_status) updated_at, rec_status)
values (#{id,jdbcType=BIGINT}, #{name,jdbcType=VARCHAR}, #{type,jdbcType=TINYINT}, values (#{id,jdbcType=BIGINT}, #{name,jdbcType=VARCHAR}, #{type,jdbcType=TINYINT},
#{competeTimeId,jdbcType=BIGINT}, #{contactsName,jdbcType=VARCHAR}, #{contactsPhone,jdbcType=VARCHAR}, #{competeTimeId,jdbcType=BIGINT}, #{contactsName,jdbcType=VARCHAR}, #{contactsPhone,jdbcType=VARCHAR},
#{userId,jdbcType=BIGINT}, #{joinNum,jdbcType=INTEGER}, #{leaderNum,jdbcType=INTEGER}, #{userId,jdbcType=BIGINT}, #{joinNum,jdbcType=INTEGER}, #{leaderNum,jdbcType=INTEGER},
#{judgmentNum,jdbcType=INTEGER}, #{authorization,jdbcType=TINYINT}, #{createdAt,jdbcType=TIMESTAMP}, #{coachNum,jdbcType=INTEGER}, #{authorization,jdbcType=TINYINT}, #{createdAt,jdbcType=TIMESTAMP},
#{updatedAt,jdbcType=TIMESTAMP}, #{recStatus,jdbcType=TINYINT}) #{updatedAt,jdbcType=TIMESTAMP}, #{recStatus,jdbcType=TINYINT})
</insert> </insert>
<insert id="insertSelective" parameterType="com.ccsens.mt.bean.po.CompeteCompany"> <insert id="insertSelective" parameterType="com.ccsens.mt.bean.po.CompeteCompany">
@ -151,8 +151,8 @@
<if test="leaderNum != null"> <if test="leaderNum != null">
leader_num, leader_num,
</if> </if>
<if test="judgmentNum != null"> <if test="coachNum != null">
judgment_num, coach_num,
</if> </if>
<if test="authorization != null"> <if test="authorization != null">
authorization, authorization,
@ -195,8 +195,8 @@
<if test="leaderNum != null"> <if test="leaderNum != null">
#{leaderNum,jdbcType=INTEGER}, #{leaderNum,jdbcType=INTEGER},
</if> </if>
<if test="judgmentNum != null"> <if test="coachNum != null">
#{judgmentNum,jdbcType=INTEGER}, #{coachNum,jdbcType=INTEGER},
</if> </if>
<if test="authorization != null"> <if test="authorization != null">
#{authorization,jdbcType=TINYINT}, #{authorization,jdbcType=TINYINT},
@ -248,8 +248,8 @@
<if test="record.leaderNum != null"> <if test="record.leaderNum != null">
leader_num = #{record.leaderNum,jdbcType=INTEGER}, leader_num = #{record.leaderNum,jdbcType=INTEGER},
</if> </if>
<if test="record.judgmentNum != null"> <if test="record.coachNum != null">
judgment_num = #{record.judgmentNum,jdbcType=INTEGER}, coach_num = #{record.coachNum,jdbcType=INTEGER},
</if> </if>
<if test="record.authorization != null"> <if test="record.authorization != null">
authorization = #{record.authorization,jdbcType=TINYINT}, authorization = #{record.authorization,jdbcType=TINYINT},
@ -279,7 +279,7 @@
user_id = #{record.userId,jdbcType=BIGINT}, user_id = #{record.userId,jdbcType=BIGINT},
join_num = #{record.joinNum,jdbcType=INTEGER}, join_num = #{record.joinNum,jdbcType=INTEGER},
leader_num = #{record.leaderNum,jdbcType=INTEGER}, leader_num = #{record.leaderNum,jdbcType=INTEGER},
judgment_num = #{record.judgmentNum,jdbcType=INTEGER}, coach_num = #{record.coachNum,jdbcType=INTEGER},
authorization = #{record.authorization,jdbcType=TINYINT}, authorization = #{record.authorization,jdbcType=TINYINT},
created_at = #{record.createdAt,jdbcType=TIMESTAMP}, created_at = #{record.createdAt,jdbcType=TIMESTAMP},
updated_at = #{record.updatedAt,jdbcType=TIMESTAMP}, updated_at = #{record.updatedAt,jdbcType=TIMESTAMP},
@ -315,8 +315,8 @@
<if test="leaderNum != null"> <if test="leaderNum != null">
leader_num = #{leaderNum,jdbcType=INTEGER}, leader_num = #{leaderNum,jdbcType=INTEGER},
</if> </if>
<if test="judgmentNum != null"> <if test="coachNum != null">
judgment_num = #{judgmentNum,jdbcType=INTEGER}, coach_num = #{coachNum,jdbcType=INTEGER},
</if> </if>
<if test="authorization != null"> <if test="authorization != null">
authorization = #{authorization,jdbcType=TINYINT}, authorization = #{authorization,jdbcType=TINYINT},
@ -343,7 +343,7 @@
user_id = #{userId,jdbcType=BIGINT}, user_id = #{userId,jdbcType=BIGINT},
join_num = #{joinNum,jdbcType=INTEGER}, join_num = #{joinNum,jdbcType=INTEGER},
leader_num = #{leaderNum,jdbcType=INTEGER}, leader_num = #{leaderNum,jdbcType=INTEGER},
judgment_num = #{judgmentNum,jdbcType=INTEGER}, coach_num = #{coachNum,jdbcType=INTEGER},
authorization = #{authorization,jdbcType=TINYINT}, authorization = #{authorization,jdbcType=TINYINT},
created_at = #{createdAt,jdbcType=TIMESTAMP}, created_at = #{createdAt,jdbcType=TIMESTAMP},
updated_at = #{updatedAt,jdbcType=TIMESTAMP}, updated_at = #{updatedAt,jdbcType=TIMESTAMP},

25
mt/src/main/resources/mapper_raw/CompeteProjectMapper.xml

@ -15,6 +15,7 @@
<result column="created_at" jdbcType="TIMESTAMP" property="createdAt" /> <result column="created_at" jdbcType="TIMESTAMP" property="createdAt" />
<result column="updated_at" jdbcType="TIMESTAMP" property="updatedAt" /> <result column="updated_at" jdbcType="TIMESTAMP" property="updatedAt" />
<result column="rec_status" jdbcType="TINYINT" property="recStatus" /> <result column="rec_status" jdbcType="TINYINT" property="recStatus" />
<result column="compete_time_id" jdbcType="BIGINT" property="competeTimeId" />
</resultMap> </resultMap>
<sql id="Example_Where_Clause"> <sql id="Example_Where_Clause">
<where> <where>
@ -76,7 +77,7 @@
</sql> </sql>
<sql id="Base_Column_List"> <sql id="Base_Column_List">
id, name, parent_id, level, team, join_rule, certificate, member_min, member_max, id, name, parent_id, level, team, join_rule, certificate, member_min, member_max,
type, created_at, updated_at, rec_status type, created_at, updated_at, rec_status, compete_time_id
</sql> </sql>
<select id="selectByExample" parameterType="com.ccsens.mt.bean.po.CompeteProjectExample" resultMap="BaseResultMap"> <select id="selectByExample" parameterType="com.ccsens.mt.bean.po.CompeteProjectExample" resultMap="BaseResultMap">
select select
@ -113,12 +114,12 @@
level, team, join_rule, level, team, join_rule,
certificate, member_min, member_max, certificate, member_min, member_max,
type, created_at, updated_at, type, created_at, updated_at,
rec_status) rec_status, compete_time_id)
values (#{id,jdbcType=BIGINT}, #{name,jdbcType=VARCHAR}, #{parentId,jdbcType=BIGINT}, values (#{id,jdbcType=BIGINT}, #{name,jdbcType=VARCHAR}, #{parentId,jdbcType=BIGINT},
#{level,jdbcType=TINYINT}, #{team,jdbcType=TINYINT}, #{joinRule,jdbcType=TINYINT}, #{level,jdbcType=TINYINT}, #{team,jdbcType=TINYINT}, #{joinRule,jdbcType=TINYINT},
#{certificate,jdbcType=TINYINT}, #{memberMin,jdbcType=INTEGER}, #{memberMax,jdbcType=INTEGER}, #{certificate,jdbcType=TINYINT}, #{memberMin,jdbcType=INTEGER}, #{memberMax,jdbcType=INTEGER},
#{type,jdbcType=TINYINT}, #{createdAt,jdbcType=TIMESTAMP}, #{updatedAt,jdbcType=TIMESTAMP}, #{type,jdbcType=TINYINT}, #{createdAt,jdbcType=TIMESTAMP}, #{updatedAt,jdbcType=TIMESTAMP},
#{recStatus,jdbcType=TINYINT}) #{recStatus,jdbcType=TINYINT}, #{competeTimeId,jdbcType=BIGINT})
</insert> </insert>
<insert id="insertSelective" parameterType="com.ccsens.mt.bean.po.CompeteProject"> <insert id="insertSelective" parameterType="com.ccsens.mt.bean.po.CompeteProject">
insert into t_compete_project insert into t_compete_project
@ -162,6 +163,9 @@
<if test="recStatus != null"> <if test="recStatus != null">
rec_status, rec_status,
</if> </if>
<if test="competeTimeId != null">
compete_time_id,
</if>
</trim> </trim>
<trim prefix="values (" suffix=")" suffixOverrides=","> <trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null"> <if test="id != null">
@ -203,6 +207,9 @@
<if test="recStatus != null"> <if test="recStatus != null">
#{recStatus,jdbcType=TINYINT}, #{recStatus,jdbcType=TINYINT},
</if> </if>
<if test="competeTimeId != null">
#{competeTimeId,jdbcType=BIGINT},
</if>
</trim> </trim>
</insert> </insert>
<select id="countByExample" parameterType="com.ccsens.mt.bean.po.CompeteProjectExample" resultType="java.lang.Long"> <select id="countByExample" parameterType="com.ccsens.mt.bean.po.CompeteProjectExample" resultType="java.lang.Long">
@ -253,6 +260,9 @@
<if test="record.recStatus != null"> <if test="record.recStatus != null">
rec_status = #{record.recStatus,jdbcType=TINYINT}, rec_status = #{record.recStatus,jdbcType=TINYINT},
</if> </if>
<if test="record.competeTimeId != null">
compete_time_id = #{record.competeTimeId,jdbcType=BIGINT},
</if>
</set> </set>
<if test="_parameter != null"> <if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" /> <include refid="Update_By_Example_Where_Clause" />
@ -272,7 +282,8 @@
type = #{record.type,jdbcType=TINYINT}, type = #{record.type,jdbcType=TINYINT},
created_at = #{record.createdAt,jdbcType=TIMESTAMP}, created_at = #{record.createdAt,jdbcType=TIMESTAMP},
updated_at = #{record.updatedAt,jdbcType=TIMESTAMP}, updated_at = #{record.updatedAt,jdbcType=TIMESTAMP},
rec_status = #{record.recStatus,jdbcType=TINYINT} rec_status = #{record.recStatus,jdbcType=TINYINT},
compete_time_id = #{record.competeTimeId,jdbcType=BIGINT}
<if test="_parameter != null"> <if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" /> <include refid="Update_By_Example_Where_Clause" />
</if> </if>
@ -316,6 +327,9 @@
<if test="recStatus != null"> <if test="recStatus != null">
rec_status = #{recStatus,jdbcType=TINYINT}, rec_status = #{recStatus,jdbcType=TINYINT},
</if> </if>
<if test="competeTimeId != null">
compete_time_id = #{competeTimeId,jdbcType=BIGINT},
</if>
</set> </set>
where id = #{id,jdbcType=BIGINT} where id = #{id,jdbcType=BIGINT}
</update> </update>
@ -332,7 +346,8 @@
type = #{type,jdbcType=TINYINT}, type = #{type,jdbcType=TINYINT},
created_at = #{createdAt,jdbcType=TIMESTAMP}, created_at = #{createdAt,jdbcType=TIMESTAMP},
updated_at = #{updatedAt,jdbcType=TIMESTAMP}, updated_at = #{updatedAt,jdbcType=TIMESTAMP},
rec_status = #{recStatus,jdbcType=TINYINT} rec_status = #{recStatus,jdbcType=TINYINT},
compete_time_id = #{competeTimeId,jdbcType=BIGINT}
where id = #{id,jdbcType=BIGINT} where id = #{id,jdbcType=BIGINT}
</update> </update>
</mapper> </mapper>

8
tall/src/main/java/com/ccsens/tall/persist/dao/ProRoleDao.java

@ -3,6 +3,7 @@ package com.ccsens.tall.persist.dao;
import com.ccsens.cloudutil.bean.tall.dto.MemberRoleDto; import com.ccsens.cloudutil.bean.tall.dto.MemberRoleDto;
import com.ccsens.tall.bean.po.ProRole; import com.ccsens.tall.bean.po.ProRole;
import com.ccsens.tall.bean.vo.ProjectVo; import com.ccsens.tall.bean.vo.ProjectVo;
import com.ccsens.tall.bean.vo.RoleVo;
import com.ccsens.tall.bean.vo.TaskVo; import com.ccsens.tall.bean.vo.TaskVo;
import com.ccsens.tall.persist.mapper.ProRoleMapper; import com.ccsens.tall.persist.mapper.ProRoleMapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
@ -52,6 +53,13 @@ public interface ProRoleDao extends ProRoleMapper{
ProjectVo.RoleInfo getRoleInfoByRoleId(@Param("roleId")Long roleId); ProjectVo.RoleInfo getRoleInfoByRoleId(@Param("roleId")Long roleId);
/**
* 通过项目id查找所有项目下的角色包括全体成员
* @param projectId 项目id
* @return 返回角色信息
*/
List<RoleVo.RoleByProjectId> queryRoleByProjectId(@Param("projectId")Long projectId);
// /** // /**
// * 查找项目下的所有成员的名字用“,”分隔 // * 查找项目下的所有成员的名字用“,”分隔
// * @param projectId 项目id // * @param projectId 项目id

15
tall/src/main/java/com/ccsens/tall/service/IProRoleService.java

@ -3,6 +3,7 @@ package com.ccsens.tall.service;
import com.ccsens.tall.bean.dto.RoleDto; import com.ccsens.tall.bean.dto.RoleDto;
import com.ccsens.tall.bean.po.ProRole; import com.ccsens.tall.bean.po.ProRole;
import com.ccsens.tall.bean.vo.ProjectVo; import com.ccsens.tall.bean.vo.ProjectVo;
import com.ccsens.tall.bean.vo.RoleVo;
import com.ccsens.tall.bean.vo.TaskVo; import com.ccsens.tall.bean.vo.TaskVo;
import java.util.List; import java.util.List;
@ -31,7 +32,7 @@ public interface IProRoleService {
ProjectVo.RoleInfo updateRole(Long currentUserId, RoleDto.UpdateRole updateRole); ProjectVo.RoleInfo updateRole(Long currentUserId, RoleDto.UpdateRole updateRole);
void saveMemberByRole(Long currentUserId, RoleDto.SaveMember saveMember); ProjectVo.RoleInfo saveMemberByRole(Long currentUserId, RoleDto.SaveMember saveMember);
void deleteMemberByRole(Long currentUserId, RoleDto.SaveMember saveMember); void deleteMemberByRole(Long currentUserId, RoleDto.SaveMember saveMember);
@ -49,10 +50,10 @@ public interface IProRoleService {
*/ */
void updateRoleShow(Long currentUserId, RoleDto.UpdateRoleShow roleShow); void updateRoleShow(Long currentUserId, RoleDto.UpdateRoleShow roleShow);
// /** /**
// * 查找项目下的角色包含“全体成员” * 查找项目下的角色包含全体成员
// * @param projectId 项目id * @param projectId 项目id
// * @return * @return
// */ */
// RoleVo.RoleByProjectId queryRoleByProjectId(Long projectId); List<RoleVo.RoleByProjectId> queryRoleByProjectId(Long projectId);
} }

9
tall/src/main/java/com/ccsens/tall/service/ProRoleService.java

@ -9,6 +9,7 @@ import com.ccsens.tall.bean.dto.MemberRoleDto;
import com.ccsens.tall.bean.dto.RoleDto; import com.ccsens.tall.bean.dto.RoleDto;
import com.ccsens.tall.bean.po.*; import com.ccsens.tall.bean.po.*;
import com.ccsens.tall.bean.vo.ProjectVo; import com.ccsens.tall.bean.vo.ProjectVo;
import com.ccsens.tall.bean.vo.RoleVo;
import com.ccsens.tall.bean.vo.TaskVo; import com.ccsens.tall.bean.vo.TaskVo;
import com.ccsens.tall.persist.dao.*; import com.ccsens.tall.persist.dao.*;
import com.ccsens.tall.persist.mapper.ProUserAttentionRoleMapper; import com.ccsens.tall.persist.mapper.ProUserAttentionRoleMapper;
@ -417,7 +418,7 @@ public class ProRoleService implements IProRoleService {
} }
@Override @Override
public void saveMemberByRole(Long currentUserId, RoleDto.SaveMember saveMember) { public ProjectVo.RoleInfo saveMemberByRole(Long currentUserId, RoleDto.SaveMember saveMember) {
//检查成员是否为空 //检查成员是否为空
ProMember member = proMemberDao.selectByPrimaryKey(saveMember.getMemberId()); ProMember member = proMemberDao.selectByPrimaryKey(saveMember.getMemberId());
if (ObjectUtil.isNull(member)) { if (ObjectUtil.isNull(member)) {
@ -436,6 +437,7 @@ public class ProRoleService implements IProRoleService {
proMemberRole.setRoleId(saveMember.getRoleId()); proMemberRole.setRoleId(saveMember.getRoleId());
proMemberRole.setMemberId(member.getId()); proMemberRole.setMemberId(member.getId());
memberRoleDao.insertSelective(proMemberRole); memberRoleDao.insertSelective(proMemberRole);
return getRoleInfoByRoleId(saveMember.getRoleId());
} }
@Override @Override
@ -537,4 +539,9 @@ public class ProRoleService implements IProRoleService {
}); });
} }
} }
@Override
public List<RoleVo.RoleByProjectId> queryRoleByProjectId(Long projectId) {
return proRoleDao.queryRoleByProjectId(projectId);
}
} }

29
tall/src/main/java/com/ccsens/tall/web/RoleController.java

@ -1,7 +1,9 @@
package com.ccsens.tall.web; package com.ccsens.tall.web;
import com.ccsens.tall.bean.dto.ProjectDto;
import com.ccsens.tall.bean.dto.RoleDto; import com.ccsens.tall.bean.dto.RoleDto;
import com.ccsens.tall.bean.vo.ProjectVo; import com.ccsens.tall.bean.vo.ProjectVo;
import com.ccsens.tall.bean.vo.RoleVo;
import com.ccsens.tall.bean.vo.TaskVo; import com.ccsens.tall.bean.vo.TaskVo;
import com.ccsens.tall.service.IProRoleService; import com.ccsens.tall.service.IProRoleService;
import com.ccsens.util.JsonResponse; import com.ccsens.util.JsonResponse;
@ -63,11 +65,11 @@ public class RoleController {
@ApiImplicitParams({ @ApiImplicitParams({
}) })
@RequestMapping(value = "/saveMember", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) @RequestMapping(value = "/saveMember", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse saveMemberByRole(HttpServletRequest request, public JsonResponse<ProjectVo.RoleInfo> saveMemberByRole(HttpServletRequest request,
@ApiParam @Validated @RequestBody RoleDto.SaveMember saveMember) throws Exception { @ApiParam @Validated @RequestBody RoleDto.SaveMember saveMember) throws Exception {
Long currentUserId = Long.valueOf(((Claims) request.getAttribute(WebConstant.REQUEST_KEY_CLAIMS)).getSubject()); Long currentUserId = Long.valueOf(((Claims) request.getAttribute(WebConstant.REQUEST_KEY_CLAIMS)).getSubject());
proRoleService.saveMemberByRole(currentUserId,saveMember); ProjectVo.RoleInfo roleInfo = proRoleService.saveMemberByRole(currentUserId,saveMember);
return JsonResponse.newInstance().ok(); return JsonResponse.newInstance().ok(roleInfo);
} }
@ApiOperation(value = "删除角色下的成员",notes = "") @ApiOperation(value = "删除角色下的成员",notes = "")
@ -81,17 +83,6 @@ public class RoleController {
return JsonResponse.newInstance().ok(); return JsonResponse.newInstance().ok();
} }
// @ApiOperation(value = "通过",notes = "")
// @ApiImplicitParams({
// })
// @RequestMapping(value = "/deleteMember", method = RequestMethod.GET, produces = {"application/json;charset=UTF-8"})
// public JsonResponse<RoleVo.RoleByProjectId> queryRoleByProjectId(HttpServletRequest request,
// @RequestParam(required = true)Long projectId) throws Exception {
// Long currentUserId = Long.valueOf(((Claims) request.getAttribute(WebConstant.REQUEST_KEY_CLAIMS)).getSubject());
// RoleVo.RoleByProjectId roleInfo = proRoleService.queryRoleByProjectId(projectId);
// return JsonResponse.newInstance().ok(roleInfo);
// }
@ApiOperation(value = "点击项目角色查询一级任务及里程碑",notes = "") @ApiOperation(value = "点击项目角色查询一级任务及里程碑",notes = "")
@ApiImplicitParams({ @ApiImplicitParams({
}) })
@ -113,4 +104,14 @@ public class RoleController {
return JsonResponse.newInstance().ok(); return JsonResponse.newInstance().ok();
} }
@ApiOperation(value = "查找项目内所有的二级角色(包括“全体成员”)",notes = "")
@ApiImplicitParams({
})
@RequestMapping(value = "/query/allRole", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<List<RoleVo.RoleByProjectId>> queryRoleByProject(HttpServletRequest request, @ApiParam @Validated @RequestBody ProjectDto.ProjectIdDto projectIdDto) throws Exception {
Long currentUserId = Long.valueOf(((Claims) request.getAttribute(WebConstant.REQUEST_KEY_CLAIMS)).getSubject());
List<RoleVo.RoleByProjectId> roleByProjectIdList = proRoleService.queryRoleByProjectId(projectIdDto.getProjectId());
return JsonResponse.newInstance().ok(roleByProjectIdList);
}
} }

4
tall/src/main/resources/application.yml

@ -1,4 +1,4 @@
spring: spring:
profiles: profiles:
active: prod active: test
include: util-prod,common include: util-test,common

15
tall/src/main/resources/mapper_dao/ProRoleDao.xml

@ -234,5 +234,20 @@
AND (mr.rec_status = 0 or mr.rec_status is null) AND (mr.rec_status = 0 or mr.rec_status is null)
AND (m.rec_status = 0 or m.rec_status is null) AND (m.rec_status = 0 or m.rec_status is null)
</select> </select>
<select id="queryRoleByProjectId" resultType="com.ccsens.tall.bean.vo.RoleVo$RoleByProjectId">
SELECT
r.id as roleId,
r.name as roleName
FROM
t_pro_role r
WHERE
r.project_id = #{projectId}
AND
(SELECT name FROM t_pro_role pr WHERE r.parent_id = pr.id) in ('PM','Member')
AND
r.name not IN ('观众','MVP')
AND
r.rec_status = 0
</select>
</mapper> </mapper>
Loading…
Cancel
Save