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.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.service.IProvinceService;
@ -18,6 +19,7 @@ import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
/**
* @author
@ -40,4 +42,45 @@ public class ProvinceController {
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 judgmentNum;
private Integer coachNum;
private Byte authorization;
@ -106,12 +106,12 @@ public class CompeteCompany implements Serializable {
this.leaderNum = leaderNum;
}
public Integer getJudgmentNum() {
return judgmentNum;
public Integer getCoachNum() {
return coachNum;
}
public void setJudgmentNum(Integer judgmentNum) {
this.judgmentNum = judgmentNum;
public void setCoachNum(Integer coachNum) {
this.coachNum = coachNum;
}
public Byte getAuthorization() {
@ -161,7 +161,7 @@ public class CompeteCompany implements Serializable {
sb.append(", userId=").append(userId);
sb.append(", joinNum=").append(joinNum);
sb.append(", leaderNum=").append(leaderNum);
sb.append(", judgmentNum=").append(judgmentNum);
sb.append(", coachNum=").append(coachNum);
sb.append(", authorization=").append(authorization);
sb.append(", createdAt=").append(createdAt);
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;
}
public Criteria andJudgmentNumIsNull() {
addCriterion("judgment_num is null");
public Criteria andCoachNumIsNull() {
addCriterion("coach_num is null");
return (Criteria) this;
}
public Criteria andJudgmentNumIsNotNull() {
addCriterion("judgment_num is not null");
public Criteria andCoachNumIsNotNull() {
addCriterion("coach_num is not null");
return (Criteria) this;
}
public Criteria andJudgmentNumEqualTo(Integer value) {
addCriterion("judgment_num =", value, "judgmentNum");
public Criteria andCoachNumEqualTo(Integer value) {
addCriterion("coach_num =", value, "coachNum");
return (Criteria) this;
}
public Criteria andJudgmentNumNotEqualTo(Integer value) {
addCriterion("judgment_num <>", value, "judgmentNum");
public Criteria andCoachNumNotEqualTo(Integer value) {
addCriterion("coach_num <>", value, "coachNum");
return (Criteria) this;
}
public Criteria andJudgmentNumGreaterThan(Integer value) {
addCriterion("judgment_num >", value, "judgmentNum");
public Criteria andCoachNumGreaterThan(Integer value) {
addCriterion("coach_num >", value, "coachNum");
return (Criteria) this;
}
public Criteria andJudgmentNumGreaterThanOrEqualTo(Integer value) {
addCriterion("judgment_num >=", value, "judgmentNum");
public Criteria andCoachNumGreaterThanOrEqualTo(Integer value) {
addCriterion("coach_num >=", value, "coachNum");
return (Criteria) this;
}
public Criteria andJudgmentNumLessThan(Integer value) {
addCriterion("judgment_num <", value, "judgmentNum");
public Criteria andCoachNumLessThan(Integer value) {
addCriterion("coach_num <", value, "coachNum");
return (Criteria) this;
}
public Criteria andJudgmentNumLessThanOrEqualTo(Integer value) {
addCriterion("judgment_num <=", value, "judgmentNum");
public Criteria andCoachNumLessThanOrEqualTo(Integer value) {
addCriterion("coach_num <=", value, "coachNum");
return (Criteria) this;
}
public Criteria andJudgmentNumIn(List<Integer> values) {
addCriterion("judgment_num in", values, "judgmentNum");
public Criteria andCoachNumIn(List<Integer> values) {
addCriterion("coach_num in", values, "coachNum");
return (Criteria) this;
}
public Criteria andJudgmentNumNotIn(List<Integer> values) {
addCriterion("judgment_num not in", values, "judgmentNum");
public Criteria andCoachNumNotIn(List<Integer> values) {
addCriterion("coach_num not in", values, "coachNum");
return (Criteria) this;
}
public Criteria andJudgmentNumBetween(Integer value1, Integer value2) {
addCriterion("judgment_num between", value1, value2, "judgmentNum");
public Criteria andCoachNumBetween(Integer value1, Integer value2) {
addCriterion("coach_num between", value1, value2, "coachNum");
return (Criteria) this;
}
public Criteria andJudgmentNumNotBetween(Integer value1, Integer value2) {
addCriterion("judgment_num not between", value1, value2, "judgmentNum");
public Criteria andCoachNumNotBetween(Integer value1, Integer value2) {
addCriterion("coach_num not between", value1, value2, "coachNum");
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 Long competeTimeId;
private static final long serialVersionUID = 1L;
public Long getId() {
@ -136,6 +138,14 @@ public class CompeteProject implements Serializable {
this.recStatus = recStatus;
}
public Long getCompeteTimeId() {
return competeTimeId;
}
public void setCompeteTimeId(Long competeTimeId) {
this.competeTimeId = competeTimeId;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
@ -155,6 +165,7 @@ public class CompeteProject implements Serializable {
sb.append(", createdAt=").append(createdAt);
sb.append(", updatedAt=").append(updatedAt);
sb.append(", recStatus=").append(recStatus);
sb.append(", competeTimeId=").append(competeTimeId);
sb.append("]");
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");
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 {

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 lombok.Data;
import javax.validation.constraints.NotNull;
import java.util.List;
/**
* @author
@ -25,4 +26,34 @@ public class ProvinceCompeteVo {
@ApiModelProperty("当前添加的参赛人员的人数")
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;
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.persist.mapper.CompeteCompanyMapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* @author
*/
@Repository
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;
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 java.util.List;
/**
* @author
*/
public interface IProvinceService {
/**
* 查找当前用户填写的信息的概览
* @param param
* @param userId
* @return
* @param param 大赛id
* @param userId userId
* @return 返回当前用户填写的信息的概览
*/
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;
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.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.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 org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import javax.servlet.http.Part;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
/**
* @author
@ -19,9 +36,86 @@ import javax.annotation.Resource;
public class ProvinceService implements IProvinceService{
@Resource
private CompeteCompanyDao competeCompanyDao;
@Resource
private Snowflake snowflake;
@Resource
private CompetePlayerMapper playerMapper;
@Resource
private CompeteTimeDao competeTimeDao;
/**
* 查找当前用户填写的信息的概览
*/
@Override
public ProvinceCompeteVo.CompeteOverview getOverview(CompeteDto.CompeteTime param, Long 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">
<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
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>
</mapper>

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

@ -11,7 +11,7 @@
<result column="user_id" jdbcType="BIGINT" property="userId" />
<result column="join_num" jdbcType="INTEGER" property="joinNum" />
<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="created_at" jdbcType="TIMESTAMP" property="createdAt" />
<result column="updated_at" jdbcType="TIMESTAMP" property="updatedAt" />
@ -77,7 +77,7 @@
</sql>
<sql id="Base_Column_List">
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>
<select id="selectByExample" parameterType="com.ccsens.mt.bean.po.CompeteCompanyExample" resultMap="BaseResultMap">
select
@ -113,12 +113,12 @@
insert into t_compete_company (id, name, type,
compete_time_id, contacts_name, contacts_phone,
user_id, join_num, leader_num,
judgment_num, authorization, created_at,
coach_num, authorization, created_at,
updated_at, rec_status)
values (#{id,jdbcType=BIGINT}, #{name,jdbcType=VARCHAR}, #{type,jdbcType=TINYINT},
#{competeTimeId,jdbcType=BIGINT}, #{contactsName,jdbcType=VARCHAR}, #{contactsPhone,jdbcType=VARCHAR},
#{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})
</insert>
<insert id="insertSelective" parameterType="com.ccsens.mt.bean.po.CompeteCompany">
@ -151,8 +151,8 @@
<if test="leaderNum != null">
leader_num,
</if>
<if test="judgmentNum != null">
judgment_num,
<if test="coachNum != null">
coach_num,
</if>
<if test="authorization != null">
authorization,
@ -195,8 +195,8 @@
<if test="leaderNum != null">
#{leaderNum,jdbcType=INTEGER},
</if>
<if test="judgmentNum != null">
#{judgmentNum,jdbcType=INTEGER},
<if test="coachNum != null">
#{coachNum,jdbcType=INTEGER},
</if>
<if test="authorization != null">
#{authorization,jdbcType=TINYINT},
@ -248,8 +248,8 @@
<if test="record.leaderNum != null">
leader_num = #{record.leaderNum,jdbcType=INTEGER},
</if>
<if test="record.judgmentNum != null">
judgment_num = #{record.judgmentNum,jdbcType=INTEGER},
<if test="record.coachNum != null">
coach_num = #{record.coachNum,jdbcType=INTEGER},
</if>
<if test="record.authorization != null">
authorization = #{record.authorization,jdbcType=TINYINT},
@ -279,7 +279,7 @@
user_id = #{record.userId,jdbcType=BIGINT},
join_num = #{record.joinNum,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},
created_at = #{record.createdAt,jdbcType=TIMESTAMP},
updated_at = #{record.updatedAt,jdbcType=TIMESTAMP},
@ -315,8 +315,8 @@
<if test="leaderNum != null">
leader_num = #{leaderNum,jdbcType=INTEGER},
</if>
<if test="judgmentNum != null">
judgment_num = #{judgmentNum,jdbcType=INTEGER},
<if test="coachNum != null">
coach_num = #{coachNum,jdbcType=INTEGER},
</if>
<if test="authorization != null">
authorization = #{authorization,jdbcType=TINYINT},
@ -343,7 +343,7 @@
user_id = #{userId,jdbcType=BIGINT},
join_num = #{joinNum,jdbcType=INTEGER},
leader_num = #{leaderNum,jdbcType=INTEGER},
judgment_num = #{judgmentNum,jdbcType=INTEGER},
coach_num = #{coachNum,jdbcType=INTEGER},
authorization = #{authorization,jdbcType=TINYINT},
created_at = #{createdAt,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="updated_at" jdbcType="TIMESTAMP" property="updatedAt" />
<result column="rec_status" jdbcType="TINYINT" property="recStatus" />
<result column="compete_time_id" jdbcType="BIGINT" property="competeTimeId" />
</resultMap>
<sql id="Example_Where_Clause">
<where>
@ -76,7 +77,7 @@
</sql>
<sql id="Base_Column_List">
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>
<select id="selectByExample" parameterType="com.ccsens.mt.bean.po.CompeteProjectExample" resultMap="BaseResultMap">
select
@ -113,12 +114,12 @@
level, team, join_rule,
certificate, member_min, member_max,
type, created_at, updated_at,
rec_status)
rec_status, compete_time_id)
values (#{id,jdbcType=BIGINT}, #{name,jdbcType=VARCHAR}, #{parentId,jdbcType=BIGINT},
#{level,jdbcType=TINYINT}, #{team,jdbcType=TINYINT}, #{joinRule,jdbcType=TINYINT},
#{certificate,jdbcType=TINYINT}, #{memberMin,jdbcType=INTEGER}, #{memberMax,jdbcType=INTEGER},
#{type,jdbcType=TINYINT}, #{createdAt,jdbcType=TIMESTAMP}, #{updatedAt,jdbcType=TIMESTAMP},
#{recStatus,jdbcType=TINYINT})
#{recStatus,jdbcType=TINYINT}, #{competeTimeId,jdbcType=BIGINT})
</insert>
<insert id="insertSelective" parameterType="com.ccsens.mt.bean.po.CompeteProject">
insert into t_compete_project
@ -162,6 +163,9 @@
<if test="recStatus != null">
rec_status,
</if>
<if test="competeTimeId != null">
compete_time_id,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">
@ -203,6 +207,9 @@
<if test="recStatus != null">
#{recStatus,jdbcType=TINYINT},
</if>
<if test="competeTimeId != null">
#{competeTimeId,jdbcType=BIGINT},
</if>
</trim>
</insert>
<select id="countByExample" parameterType="com.ccsens.mt.bean.po.CompeteProjectExample" resultType="java.lang.Long">
@ -253,6 +260,9 @@
<if test="record.recStatus != null">
rec_status = #{record.recStatus,jdbcType=TINYINT},
</if>
<if test="record.competeTimeId != null">
compete_time_id = #{record.competeTimeId,jdbcType=BIGINT},
</if>
</set>
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
@ -272,7 +282,8 @@
type = #{record.type,jdbcType=TINYINT},
created_at = #{record.createdAt,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">
<include refid="Update_By_Example_Where_Clause" />
</if>
@ -316,6 +327,9 @@
<if test="recStatus != null">
rec_status = #{recStatus,jdbcType=TINYINT},
</if>
<if test="competeTimeId != null">
compete_time_id = #{competeTimeId,jdbcType=BIGINT},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
</update>
@ -332,7 +346,8 @@
type = #{type,jdbcType=TINYINT},
created_at = #{createdAt,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}
</update>
</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.tall.bean.po.ProRole;
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.persist.mapper.ProRoleMapper;
import org.apache.ibatis.annotations.Param;
@ -52,6 +53,13 @@ public interface ProRoleDao extends ProRoleMapper{
ProjectVo.RoleInfo getRoleInfoByRoleId(@Param("roleId")Long roleId);
/**
* 通过项目id查找所有项目下的角色包括全体成员
* @param projectId 项目id
* @return 返回角色信息
*/
List<RoleVo.RoleByProjectId> queryRoleByProjectId(@Param("projectId")Long projectId);
// /**
// * 查找项目下的所有成员的名字用“,”分隔
// * @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.po.ProRole;
import com.ccsens.tall.bean.vo.ProjectVo;
import com.ccsens.tall.bean.vo.RoleVo;
import com.ccsens.tall.bean.vo.TaskVo;
import java.util.List;
@ -31,7 +32,7 @@ public interface IProRoleService {
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);
@ -49,10 +50,10 @@ public interface IProRoleService {
*/
void updateRoleShow(Long currentUserId, RoleDto.UpdateRoleShow roleShow);
// /**
// * 查找项目下的角色包含“全体成员”
// * @param projectId 项目id
// * @return
// */
// RoleVo.RoleByProjectId queryRoleByProjectId(Long projectId);
/**
* 查找项目下的角色包含全体成员
* @param projectId 项目id
* @return
*/
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.po.*;
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.persist.dao.*;
import com.ccsens.tall.persist.mapper.ProUserAttentionRoleMapper;
@ -417,7 +418,7 @@ public class ProRoleService implements IProRoleService {
}
@Override
public void saveMemberByRole(Long currentUserId, RoleDto.SaveMember saveMember) {
public ProjectVo.RoleInfo saveMemberByRole(Long currentUserId, RoleDto.SaveMember saveMember) {
//检查成员是否为空
ProMember member = proMemberDao.selectByPrimaryKey(saveMember.getMemberId());
if (ObjectUtil.isNull(member)) {
@ -436,6 +437,7 @@ public class ProRoleService implements IProRoleService {
proMemberRole.setRoleId(saveMember.getRoleId());
proMemberRole.setMemberId(member.getId());
memberRoleDao.insertSelective(proMemberRole);
return getRoleInfoByRoleId(saveMember.getRoleId());
}
@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;
import com.ccsens.tall.bean.dto.ProjectDto;
import com.ccsens.tall.bean.dto.RoleDto;
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.service.IProRoleService;
import com.ccsens.util.JsonResponse;
@ -63,11 +65,11 @@ public class RoleController {
@ApiImplicitParams({
})
@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 {
Long currentUserId = Long.valueOf(((Claims) request.getAttribute(WebConstant.REQUEST_KEY_CLAIMS)).getSubject());
proRoleService.saveMemberByRole(currentUserId,saveMember);
return JsonResponse.newInstance().ok();
ProjectVo.RoleInfo roleInfo = proRoleService.saveMemberByRole(currentUserId,saveMember);
return JsonResponse.newInstance().ok(roleInfo);
}
@ApiOperation(value = "删除角色下的成员",notes = "")
@ -81,17 +83,6 @@ public class RoleController {
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 = "")
@ApiImplicitParams({
})
@ -113,4 +104,14 @@ public class RoleController {
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:
profiles:
active: prod
include: util-prod,common
active: test
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 (m.rec_status = 0 or m.rec_status is null)
</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>
Loading…
Cancel
Save