From 64fd1cbc5f20a717e7c7fb11c4bd2184ffa7fdac Mon Sep 17 00:00:00 2001 From: zy_Java <654600784@qq.com> Date: Tue, 17 Nov 2020 11:19:48 +0800 Subject: [PATCH] 20201117v1.0 --- .../cloudutil/config/FeignTokenConfig.java | 24 ++++ .../cloudutil/feign/TallFeignClient.java | 4 +- .../java/com/ccsens/mt/bean/dto/VideoDto.java | 4 +- .../ccsens/mt/bean/vo/ProvinceCompeteVo.java | 2 +- .../ccsens/mt/service/CompeteTaskService.java | 105 +++++++++++------- pom.xml | 2 +- 6 files changed, 97 insertions(+), 44 deletions(-) create mode 100644 cloudutil/src/main/java/com/ccsens/cloudutil/config/FeignTokenConfig.java diff --git a/cloudutil/src/main/java/com/ccsens/cloudutil/config/FeignTokenConfig.java b/cloudutil/src/main/java/com/ccsens/cloudutil/config/FeignTokenConfig.java new file mode 100644 index 00000000..41d05117 --- /dev/null +++ b/cloudutil/src/main/java/com/ccsens/cloudutil/config/FeignTokenConfig.java @@ -0,0 +1,24 @@ +package com.ccsens.cloudutil.config; + +import feign.RequestInterceptor; +import feign.RequestTemplate; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import javax.servlet.http.HttpServletRequest; + +/** + * @author 逗 + */ +public class FeignTokenConfig implements RequestInterceptor { + @Override + public void apply(RequestTemplate template) { + ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); + if(attributes == null){ + return; + } + HttpServletRequest request = attributes.getRequest(); + //添加token + template.header("Authorization", request.getHeader("Authorization")); + } +} diff --git a/cloudutil/src/main/java/com/ccsens/cloudutil/feign/TallFeignClient.java b/cloudutil/src/main/java/com/ccsens/cloudutil/feign/TallFeignClient.java index 7a711c4e..28e2b13f 100644 --- a/cloudutil/src/main/java/com/ccsens/cloudutil/feign/TallFeignClient.java +++ b/cloudutil/src/main/java/com/ccsens/cloudutil/feign/TallFeignClient.java @@ -3,7 +3,9 @@ package com.ccsens.cloudutil.feign; import com.ccsens.cloudutil.bean.QueryParam; import com.ccsens.cloudutil.bean.tall.dto.*; import com.ccsens.cloudutil.bean.tall.vo.*; +import com.ccsens.cloudutil.config.FeignTokenConfig; import com.ccsens.util.JsonResponse; +import feign.RequestInterceptor; import feign.hystrix.FallbackFactory; import lombok.extern.slf4j.Slf4j; import org.springframework.cloud.openfeign.FeignClient; @@ -19,7 +21,7 @@ import java.util.List; * @create: 2019/11/27 10:03 */ -@FeignClient(name = "tall", path = "v1.0", fallbackFactory = TallFeignClientFallBack.class) +@FeignClient(name = "tall", path = "v1.0",fallbackFactory = TallFeignClientFallBack.class,configuration = FeignTokenConfig.class) public interface TallFeignClient { /** diff --git a/mt/src/main/java/com/ccsens/mt/bean/dto/VideoDto.java b/mt/src/main/java/com/ccsens/mt/bean/dto/VideoDto.java index b5920c5b..e1d9008b 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/dto/VideoDto.java +++ b/mt/src/main/java/com/ccsens/mt/bean/dto/VideoDto.java @@ -44,8 +44,10 @@ public class VideoDto { @ApiModel("添加用户观看开幕式视频记录(签到用)") public static class Video{ @NonNull - @ApiModelProperty("视频文件id") + @ApiModelProperty("单位文件id") private Long companyId; + public Video() { + } } @Data @ApiModel("上传视频保存上传记录 (比赛视频)") diff --git a/mt/src/main/java/com/ccsens/mt/bean/vo/ProvinceCompeteVo.java b/mt/src/main/java/com/ccsens/mt/bean/vo/ProvinceCompeteVo.java index 4ff70a2c..fefef39e 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/vo/ProvinceCompeteVo.java +++ b/mt/src/main/java/com/ccsens/mt/bean/vo/ProvinceCompeteVo.java @@ -274,7 +274,7 @@ public class ProvinceCompeteVo { @ApiModelProperty("组别名") private String groupName; @ApiModelProperty("视频连接(云点播)(为null则代表未传视频)") - private Long videoUrl; + private String videoUrl; } diff --git a/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java b/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java index 87f1e4fc..e4d7298b 100644 --- a/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java +++ b/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java @@ -25,9 +25,9 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; -import java.util.concurrent.atomic.AtomicReference; /** * @author 逗 @@ -297,45 +297,11 @@ public class CompeteTaskService implements ICompeteTaskService{ for(ProvinceCompeteDto.AllocationJudgment allocationJudgment : param.getAllocationJudgmentList()) { CompeteProject project = competeProjectDao.selectByPrimaryKey(allocationJudgment.getProjectId()); if (ObjectUtil.isNotNull(project)) { - if (CollectionUtil.isNotEmpty(allocationJudgment.getSiteJudgmentList())) { allocationJudgment.getSiteJudgmentList().forEach(siteJudgment -> { if (ObjectUtil.isNotNull(siteJudgment)) { siteJudgment.getJudgmentInfoList().forEach(judgmentInfo -> { - // TODO 查找该手机号在此项目之前的裁判信息,修改,同时修改tall内的成员角色信息 - //添加裁判信息 - CompeteJudgment competeJudgment = new CompeteJudgment(); - competeJudgment.setId(snowflake.nextId()); - competeJudgment.setName(judgmentInfo.getJudgmentName()); - competeJudgment.setPhone(judgmentInfo.getJudgmentPhone()); - competeJudgment.setRemark(judgmentInfo.getRemark()); - competeJudgment.setCompeteTimeId(param.getCompeteTimeId()); - competeJudgment.setProjectId(allocationJudgment.getProjectId()); - competeJudgment.setSite(siteJudgment.getSite()); - competeJudgment.setChiefJudgment((byte) judgmentInfo.getJudgmentNum()); - competeJudgmentDao.insertSelective(competeJudgment); - //添加角色 - MemberRoleDto.SaveRole saveRole = new MemberRoleDto.SaveRole(); - saveRole.setProjectId(param.getTallProjectId()); - String jdgmentNum = ""; - if(judgmentInfo.getJudgmentNum() == 0){ - jdgmentNum = "主裁判"; - }else { - jdgmentNum = "裁判"+judgmentInfo.getJudgmentNum(); - } - saveRole.setRoleName(project.getName()+"-场地"+siteJudgment.getSite()+"-"+jdgmentNum); - Long roleId = null; - JsonResponse memberJsonResponse = tallFeignClient.saveRole(saveRole); - if (ObjectUtil.isNotNull(memberJsonResponse)) { - MemberVo.RoleInfo roleInfo = memberJsonResponse.getData(); - if (ObjectUtil.isNotNull(roleInfo)) { - roleId = roleInfo.getRoleId(); - } - } - //添加成员 - - - //添加任务 + saveJudgmentAndTask(param.getCompeteTimeId(),param.getTallProjectId(), project, siteJudgment, judgmentInfo); }); } }); @@ -343,10 +309,69 @@ public class CompeteTaskService implements ICompeteTaskService{ } } } - - //在tall内添加裁判角色 - //在tall内添加裁判成员 - //添加每个裁判的任务 return competeJudgmentDao.queryJudgment(param.getCompeteTimeId()); } + + /** + * 添加裁判信息和tall内的角色成员任务 + */ + private void saveJudgmentAndTask(Long competeTimeId,Long tallProjectId,CompeteProject project + , ProvinceCompeteDto.SiteJudgment siteJudgment, ProvinceCompeteDto.JudgmentInfo judgmentInfo) { + // TODO 查找该手机号在此项目之前的裁判信息,修改,同时修改tall内的成员角色信息 + //添加裁判信息 + CompeteJudgment competeJudgment = new CompeteJudgment(); + competeJudgment.setId(snowflake.nextId()); + competeJudgment.setName(judgmentInfo.getJudgmentName()); + competeJudgment.setPhone(judgmentInfo.getJudgmentPhone()); + competeJudgment.setRemark(judgmentInfo.getRemark()); + competeJudgment.setCompeteTimeId(competeTimeId); + competeJudgment.setProjectId(project.getId()); + competeJudgment.setSite(siteJudgment.getSite()); + competeJudgment.setChiefJudgment((byte) judgmentInfo.getJudgmentNum()); + competeJudgmentDao.insertSelective(competeJudgment); + //添加角色 + MemberRoleDto.SaveRole saveRole = new MemberRoleDto.SaveRole(); + saveRole.setProjectId(tallProjectId); + String jdgmentNum = ""; + if(judgmentInfo.getJudgmentNum() == 0){ + jdgmentNum = "主裁判"; + }else { + jdgmentNum = "裁判"+judgmentInfo.getJudgmentNum(); + } + saveRole.setRoleName(project.getName()+"-场地"+siteJudgment.getSite()+"-"+jdgmentNum); + Long roleId = null; + JsonResponse memberJsonResponse = tallFeignClient.saveRole(saveRole); + if (ObjectUtil.isNotNull(memberJsonResponse)) { + MemberVo.RoleInfo roleInfo = memberJsonResponse.getData(); + if (ObjectUtil.isNotNull(roleInfo)) { + roleId = roleInfo.getRoleId(); + } + } + //添加成员 + MemberRoleDto.SaveMember saveMember = new MemberRoleDto.SaveMember(); + saveMember.setMemberName(judgmentInfo.getJudgmentName()); + saveMember.setProjectId(tallProjectId); + saveMember.setPhone(judgmentInfo.getJudgmentPhone()); + saveMember.setRoleId(Arrays.asList(roleId)); + tallFeignClient.saveMember(saveMember); + //添加任务 + //查找场次信息表 + CompeteStartOrderExample startOrderExample = new CompeteStartOrderExample(); + startOrderExample.createCriteria().andProjectIdEqualTo(project.getId()) + .andSiteEqualTo((byte) siteJudgment.getSite()); + List startOrderList = startOrderMapper.selectByExample(startOrderExample); + if(CollectionUtil.isNotEmpty(startOrderList)){ + for(CompeteStartOrder startOrder : startOrderList) { + TallTaskDto.AddTask addTask = new TallTaskDto.AddTask(); + addTask.setProjectId(tallProjectId); + addTask.setTaskName(project.getName() + startOrder.getCompeteOrder() + "-" + + startOrder.getSite() + "-" + jdgmentNum); + addTask.setBeginTime(startOrder.getStartTime()); + addTask.setEndTime(startOrder.getEndTime()); + addTask.setExecutorId(roleId); + addTask.setParentTaskId(startOrder.getTaskId()); + tallFeignClient.saveTask(addTask); + } + } + } } diff --git a/pom.xml b/pom.xml index c938369f..7c684266 100644 --- a/pom.xml +++ b/pom.xml @@ -10,7 +10,7 @@ util tall - game + mt