From 6ba73068a4a0ba13fd20e68db83ed1324ad52edd Mon Sep 17 00:00:00 2001 From: zy_Java <654600784@qq.com> Date: Mon, 16 Nov 2020 18:40:55 +0800 Subject: [PATCH 01/13] 20201116v1.6 --- .../bean/tall/dto/MemberRoleDto.java | 32 ++++++ .../cloudutil/bean/tall/vo/MemberVo.java | 24 ++++ .../cloudutil/feign/TallFeignClient.java | 24 +++- .../ccsens/mt/api/CompeteTaskController.java | 3 +- .../mt/bean/dto/ProvinceCompeteDto.java | 13 ++- .../java/com/ccsens/mt/bean/dto/VideoDto.java | 2 +- .../ccsens/mt/bean/po/CompeteJudgment.java | 23 +++- .../mt/bean/po/CompeteJudgmentExample.java | 108 ++++++++++++++---- .../ccsens/mt/bean/vo/ProvinceCompeteVo.java | 2 + .../mt/persist/dao/CompetePlayerDao.java | 2 +- .../ccsens/mt/service/CompeteTaskService.java | 61 +++++++++- .../mt/service/ICompeteTaskService.java | 2 +- .../ccsens/mt/service/ProvinceService.java | 5 +- mt/src/main/resources/application.yml | 4 +- .../resources/mapper_dao/CompetePlayerDao.xml | 6 + .../mapper_dao/CompeteProjectConfigDao.xml | 4 +- .../mapper_raw/CompeteJudgmentMapper.xml | 57 +++++---- .../java/com/ccsens/tall/bean/vo/RoleVo.java | 13 +++ .../tall/service/IProMemberService.java | 3 +- .../ccsens/tall/service/IProRoleService.java | 2 +- .../ccsens/tall/service/ProMemberService.java | 10 +- .../ccsens/tall/service/ProRoleService.java | 6 +- .../com/ccsens/tall/web/MemberController.java | 9 +- .../com/ccsens/tall/web/RoleController.java | 6 +- 24 files changed, 345 insertions(+), 76 deletions(-) diff --git a/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/dto/MemberRoleDto.java b/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/dto/MemberRoleDto.java index 4318a95b..bac2a095 100644 --- a/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/dto/MemberRoleDto.java +++ b/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/dto/MemberRoleDto.java @@ -9,6 +9,7 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.springframework.beans.BeanUtils; +import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotNull; import java.util.List; @@ -76,4 +77,35 @@ public class MemberRoleDto { return assign; } } + + @Data + @ApiModel("添加成员") + public static class SaveMember{ + @NotNull + @ApiModelProperty("项目id") + private Long projectId; + @ApiModelProperty("成员名") + private String memberName; + @NotEmpty + @ApiModelProperty("成员手机号") + private String phone; + @ApiModelProperty("所属角色的id") + private List roleId; + @ApiModelProperty("奖惩干系人手机号") + private String stakeholderPhone; + @ApiModelProperty("奖惩干系人姓名") + private String stakeholderName; + } + + @Data + @ApiModel("添加角色") + public static class SaveRole{ + @NotNull(message = "项目不能为空") + @ApiModelProperty("项目id") + private Long projectId; + @NotEmpty(message = "角色名不能为空") + @ApiModelProperty("角色名") + private String roleName; + } + } diff --git a/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/vo/MemberVo.java b/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/vo/MemberVo.java index 3abf2bda..5050a6f9 100644 --- a/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/vo/MemberVo.java +++ b/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/vo/MemberVo.java @@ -1,5 +1,7 @@ package com.ccsens.cloudutil.bean.tall.vo; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; @Data @@ -18,4 +20,26 @@ public class MemberVo { private Long joinTime; private Long stakeholderId; } + + @Data + @ApiModel("角色信息") + public static class RoleInfo{ + @ApiModelProperty("角色id") + private Long roleId; + @ApiModelProperty("角色名") + private String roleName; + } + + @Data + @ApiModel("添加时返回成员信息") + public static class Member{ + @ApiModelProperty("成员id") + private Long memberId; + @ApiModelProperty("成员名") + private String memberName; + @ApiModelProperty("手机号") + private String phone; + @ApiModelProperty("userId") + private Long userId; + } } 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 c0e96b64..7a711c4e 100644 --- a/cloudutil/src/main/java/com/ccsens/cloudutil/feign/TallFeignClient.java +++ b/cloudutil/src/main/java/com/ccsens/cloudutil/feign/TallFeignClient.java @@ -198,8 +198,20 @@ public interface TallFeignClient { /** * 修改任务插件配置 */ - @DeleteMapping("/plugins/config") + @RequestMapping("/plugins/config") JsonResponse updatePluginConfig(TallTaskDto.UpdatePluginConfig updatePluginConfig); + + /** + * 添加角色 + */ + @RequestMapping("/roles/save") + JsonResponse saveRole(MemberRoleDto.SaveRole saveRole); + + /** + * 添加成员 + */ + @RequestMapping("/members/save") + JsonResponse saveMember(MemberRoleDto.SaveMember saveMember); } @Slf4j @@ -332,6 +344,16 @@ class TallFeignClientFallBack implements FallbackFactory { public JsonResponse updatePluginConfig(TallTaskDto.UpdatePluginConfig updatePluginConfig) { return JsonResponse.newInstance().fail(); } + + @Override + public JsonResponse saveRole(MemberRoleDto.SaveRole saveRole) { + return JsonResponse.newInstance().fail(); + } + + @Override + public JsonResponse saveMember(MemberRoleDto.SaveMember saveMember) { + return JsonResponse.newInstance().fail(); + } }; } diff --git a/mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java b/mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java index 91b0b444..820f2f70 100644 --- a/mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java +++ b/mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java @@ -77,7 +77,8 @@ public class CompeteTaskController { @MustLogin @ApiOperation(value = "分配裁判信息", notes = "zy:传入裁判分配信息表,根据内容给每个的项目的每个场次添加裁判信息") @RequestMapping(value = "/allocation/judgment", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) - public JsonResponse> allocationJudgment(@ApiParam @Validated @RequestBody QueryDto params) { + public JsonResponse> allocationJudgment( + @ApiParam @Validated @RequestBody QueryDto params) { log.info("分配裁判信息:{}",params); List queryJudgmentList = competeTaskService.allocationJudgment(params.getParam()); log.info("分配裁判信息:{}",queryJudgmentList); diff --git a/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java b/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java index 16e8ba05..28ce4650 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java +++ b/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java @@ -239,7 +239,18 @@ public class ProvinceCompeteDto { private Long companyId; } - + @Data + @ApiModel("分配裁判信息包括tall的项目id") + public static class AllocationJudgmentAndTall{ + @NotNull + @ApiModelProperty("大赛id") + private Long competeTimeId; + @NotNull + @ApiModelProperty("tall的项目id") + private Long tallProjectId; + @ApiModelProperty("每个项目下的裁判信息") + private List allocationJudgmentList; + } @Data @ApiModel("分配裁判信息") public static class AllocationJudgment{ 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 5dc4780e..b5920c5b 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 @@ -50,7 +50,7 @@ public class VideoDto { @Data @ApiModel("上传视频保存上传记录 (比赛视频)") public static class UploadVdeo{ - @ApiModelProperty("视频文件id") + @ApiModelProperty("单位id") private Long companyId; @ApiModelProperty("大赛id") private Long competeTimeId; diff --git a/mt/src/main/java/com/ccsens/mt/bean/po/CompeteJudgment.java b/mt/src/main/java/com/ccsens/mt/bean/po/CompeteJudgment.java index 079c5ad4..b0fec397 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/po/CompeteJudgment.java +++ b/mt/src/main/java/com/ccsens/mt/bean/po/CompeteJudgment.java @@ -14,7 +14,7 @@ public class CompeteJudgment implements Serializable { private Long competeTimeId; - private Long siteOrderId; + private Integer site; private Long projectId; @@ -28,6 +28,8 @@ public class CompeteJudgment implements Serializable { private Byte recStatus; + private Long memberId; + private static final long serialVersionUID = 1L; public Long getId() { @@ -70,12 +72,12 @@ public class CompeteJudgment implements Serializable { this.competeTimeId = competeTimeId; } - public Long getSiteOrderId() { - return siteOrderId; + public Integer getSite() { + return site; } - public void setSiteOrderId(Long siteOrderId) { - this.siteOrderId = siteOrderId; + public void setSite(Integer site) { + this.site = site; } public Long getProjectId() { @@ -126,6 +128,14 @@ public class CompeteJudgment implements Serializable { this.recStatus = recStatus; } + public Long getMemberId() { + return memberId; + } + + public void setMemberId(Long memberId) { + this.memberId = memberId; + } + @Override public String toString() { StringBuilder sb = new StringBuilder(); @@ -137,13 +147,14 @@ public class CompeteJudgment implements Serializable { sb.append(", phone=").append(phone); sb.append(", remark=").append(remark); sb.append(", competeTimeId=").append(competeTimeId); - sb.append(", siteOrderId=").append(siteOrderId); + sb.append(", site=").append(site); sb.append(", projectId=").append(projectId); sb.append(", userId=").append(userId); sb.append(", chiefJudgment=").append(chiefJudgment); sb.append(", createdAt=").append(createdAt); sb.append(", updatedAt=").append(updatedAt); sb.append(", recStatus=").append(recStatus); + sb.append(", memberId=").append(memberId); sb.append("]"); return sb.toString(); } diff --git a/mt/src/main/java/com/ccsens/mt/bean/po/CompeteJudgmentExample.java b/mt/src/main/java/com/ccsens/mt/bean/po/CompeteJudgmentExample.java index f88f0ccc..db725b61 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/po/CompeteJudgmentExample.java +++ b/mt/src/main/java/com/ccsens/mt/bean/po/CompeteJudgmentExample.java @@ -435,63 +435,63 @@ public class CompeteJudgmentExample { return (Criteria) this; } - public Criteria andSiteOrderIdIsNull() { - addCriterion("site_order_id is null"); + public Criteria andSiteIsNull() { + addCriterion("site is null"); return (Criteria) this; } - public Criteria andSiteOrderIdIsNotNull() { - addCriterion("site_order_id is not null"); + public Criteria andSiteIsNotNull() { + addCriterion("site is not null"); return (Criteria) this; } - public Criteria andSiteOrderIdEqualTo(Long value) { - addCriterion("site_order_id =", value, "siteOrderId"); + public Criteria andSiteEqualTo(Integer value) { + addCriterion("site =", value, "site"); return (Criteria) this; } - public Criteria andSiteOrderIdNotEqualTo(Long value) { - addCriterion("site_order_id <>", value, "siteOrderId"); + public Criteria andSiteNotEqualTo(Integer value) { + addCriterion("site <>", value, "site"); return (Criteria) this; } - public Criteria andSiteOrderIdGreaterThan(Long value) { - addCriterion("site_order_id >", value, "siteOrderId"); + public Criteria andSiteGreaterThan(Integer value) { + addCriterion("site >", value, "site"); return (Criteria) this; } - public Criteria andSiteOrderIdGreaterThanOrEqualTo(Long value) { - addCriterion("site_order_id >=", value, "siteOrderId"); + public Criteria andSiteGreaterThanOrEqualTo(Integer value) { + addCriterion("site >=", value, "site"); return (Criteria) this; } - public Criteria andSiteOrderIdLessThan(Long value) { - addCriterion("site_order_id <", value, "siteOrderId"); + public Criteria andSiteLessThan(Integer value) { + addCriterion("site <", value, "site"); return (Criteria) this; } - public Criteria andSiteOrderIdLessThanOrEqualTo(Long value) { - addCriterion("site_order_id <=", value, "siteOrderId"); + public Criteria andSiteLessThanOrEqualTo(Integer value) { + addCriterion("site <=", value, "site"); return (Criteria) this; } - public Criteria andSiteOrderIdIn(List values) { - addCriterion("site_order_id in", values, "siteOrderId"); + public Criteria andSiteIn(List values) { + addCriterion("site in", values, "site"); return (Criteria) this; } - public Criteria andSiteOrderIdNotIn(List values) { - addCriterion("site_order_id not in", values, "siteOrderId"); + public Criteria andSiteNotIn(List values) { + addCriterion("site not in", values, "site"); return (Criteria) this; } - public Criteria andSiteOrderIdBetween(Long value1, Long value2) { - addCriterion("site_order_id between", value1, value2, "siteOrderId"); + public Criteria andSiteBetween(Integer value1, Integer value2) { + addCriterion("site between", value1, value2, "site"); return (Criteria) this; } - public Criteria andSiteOrderIdNotBetween(Long value1, Long value2) { - addCriterion("site_order_id not between", value1, value2, "siteOrderId"); + public Criteria andSiteNotBetween(Integer value1, Integer value2) { + addCriterion("site not between", value1, value2, "site"); return (Criteria) this; } @@ -854,6 +854,66 @@ public class CompeteJudgmentExample { addCriterion("rec_status not between", value1, value2, "recStatus"); return (Criteria) this; } + + public Criteria andMemberIdIsNull() { + addCriterion("member_id is null"); + return (Criteria) this; + } + + public Criteria andMemberIdIsNotNull() { + addCriterion("member_id is not null"); + return (Criteria) this; + } + + public Criteria andMemberIdEqualTo(Long value) { + addCriterion("member_id =", value, "memberId"); + return (Criteria) this; + } + + public Criteria andMemberIdNotEqualTo(Long value) { + addCriterion("member_id <>", value, "memberId"); + return (Criteria) this; + } + + public Criteria andMemberIdGreaterThan(Long value) { + addCriterion("member_id >", value, "memberId"); + return (Criteria) this; + } + + public Criteria andMemberIdGreaterThanOrEqualTo(Long value) { + addCriterion("member_id >=", value, "memberId"); + return (Criteria) this; + } + + public Criteria andMemberIdLessThan(Long value) { + addCriterion("member_id <", value, "memberId"); + return (Criteria) this; + } + + public Criteria andMemberIdLessThanOrEqualTo(Long value) { + addCriterion("member_id <=", value, "memberId"); + return (Criteria) this; + } + + public Criteria andMemberIdIn(List values) { + addCriterion("member_id in", values, "memberId"); + return (Criteria) this; + } + + public Criteria andMemberIdNotIn(List values) { + addCriterion("member_id not in", values, "memberId"); + return (Criteria) this; + } + + public Criteria andMemberIdBetween(Long value1, Long value2) { + addCriterion("member_id between", value1, value2, "memberId"); + return (Criteria) this; + } + + public Criteria andMemberIdNotBetween(Long value1, Long value2) { + addCriterion("member_id not between", value1, value2, "memberId"); + return (Criteria) this; + } } public static class Criteria extends GeneratedCriteria { 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 d999e62e..4ff70a2c 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 @@ -263,6 +263,8 @@ public class ProvinceCompeteVo { private Long startOrderId; @ApiModelProperty("场次") private int competeOrder; + @ApiModelProperty("选手关联项目id/团队id") + private Long playerOrTeamId; @ApiModelProperty("场地") private int site; @ApiModelProperty("选手名") diff --git a/mt/src/main/java/com/ccsens/mt/persist/dao/CompetePlayerDao.java b/mt/src/main/java/com/ccsens/mt/persist/dao/CompetePlayerDao.java index 37f54b43..8ae1a28d 100644 --- a/mt/src/main/java/com/ccsens/mt/persist/dao/CompetePlayerDao.java +++ b/mt/src/main/java/com/ccsens/mt/persist/dao/CompetePlayerDao.java @@ -85,5 +85,5 @@ public interface CompetePlayerDao extends CompetePlayerMapper { * @param idCard 身份证 * @return */ - int selectJoinNumByIdCard(@Param("type")int type, @Param("idCard")String idCard); + int selectJoinNumByIdCard(@Param("type")int type, @Param("idCard")String idCard,@Param("playerId")Long playerId); } 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 1f7d4f66..87f1e4fc 100644 --- a/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java +++ b/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java @@ -3,7 +3,9 @@ package com.ccsens.mt.service; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.lang.Snowflake; import cn.hutool.core.util.ObjectUtil; +import com.ccsens.cloudutil.bean.tall.dto.MemberRoleDto; import com.ccsens.cloudutil.bean.tall.dto.TallTaskDto; +import com.ccsens.cloudutil.bean.tall.vo.MemberVo; import com.ccsens.cloudutil.bean.tall.vo.TaskVo; import com.ccsens.cloudutil.feign.TallFeignClient; import com.ccsens.mt.bean.dto.CompeteDto; @@ -25,6 +27,7 @@ import javax.annotation.Resource; import java.util.ArrayList; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; +import java.util.concurrent.atomic.AtomicReference; /** * @author 逗 @@ -288,8 +291,62 @@ public class CompeteTaskService implements ICompeteTaskService{ * 分配裁判 */ @Override - public List allocationJudgment(ProvinceCompeteDto.AllocationJudgment param) { + public List allocationJudgment(ProvinceCompeteDto.AllocationJudgmentAndTall param) { + //查找项目 + if(CollectionUtil.isNotEmpty(param.getAllocationJudgmentList())){ + for(ProvinceCompeteDto.AllocationJudgment allocationJudgment : param.getAllocationJudgmentList()) { + CompeteProject project = competeProjectDao.selectByPrimaryKey(allocationJudgment.getProjectId()); + if (ObjectUtil.isNotNull(project)) { - return null; + 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(); + } + } + //添加成员 + + + //添加任务 + }); + } + }); + } + } + } + } + + //在tall内添加裁判角色 + //在tall内添加裁判成员 + //添加每个裁判的任务 + return competeJudgmentDao.queryJudgment(param.getCompeteTimeId()); } } diff --git a/mt/src/main/java/com/ccsens/mt/service/ICompeteTaskService.java b/mt/src/main/java/com/ccsens/mt/service/ICompeteTaskService.java index a6cfebcb..e1f6586c 100644 --- a/mt/src/main/java/com/ccsens/mt/service/ICompeteTaskService.java +++ b/mt/src/main/java/com/ccsens/mt/service/ICompeteTaskService.java @@ -44,5 +44,5 @@ public interface ICompeteTaskService { * @param param * @return */ - List allocationJudgment(ProvinceCompeteDto.AllocationJudgment param); + List allocationJudgment(ProvinceCompeteDto.AllocationJudgmentAndTall param); } diff --git a/mt/src/main/java/com/ccsens/mt/service/ProvinceService.java b/mt/src/main/java/com/ccsens/mt/service/ProvinceService.java index 39521b3b..e29afc35 100644 --- a/mt/src/main/java/com/ccsens/mt/service/ProvinceService.java +++ b/mt/src/main/java/com/ccsens/mt/service/ProvinceService.java @@ -135,7 +135,7 @@ public class ProvinceService implements IProvinceService { //身份证不能为空,且正确 if(StrUtil.isEmpty(param.getIdCard()) || !IdcardUtil.isValidCard(param.getIdCard())){throw new BaseException(CodeEnum.ID_CARD_ERROR);} //是否已注册 - int idCardNum = competePlayerDao.selectJoinNumByIdCard(type,param.getIdCard()); + int idCardNum = competePlayerDao.selectJoinNumByIdCard(type,param.getIdCard(),param.getPlayerId()); // CompetePlayerExample competePlayerExample = new CompetePlayerExample(); // competePlayerExample.createCriteria().andIdCardEqualTo(param.getIdCard()); // if(competePlayerDao.countByExample(competePlayerExample) != 0){ @@ -200,8 +200,7 @@ public class ProvinceService implements IProvinceService { //身份证正确 if(!IdcardUtil.isValidCard(param.getIdCard())){throw new BaseException(CodeEnum.ID_CARD_ERROR);} //是否已注册 - //是否已注册 - int idCardNum = competePlayerDao.selectJoinNumByIdCard(type,param.getIdCard()); + int idCardNum = competePlayerDao.selectJoinNumByIdCard(type,param.getIdCard(),param.getPlayerId()); if(idCardNum > 0){ throw new BaseException(CodeEnum.ID_CARD_ALREADY); } diff --git a/mt/src/main/resources/application.yml b/mt/src/main/resources/application.yml index 4ecd13fd..f59084b0 100644 --- a/mt/src/main/resources/application.yml +++ b/mt/src/main/resources/application.yml @@ -1,5 +1,5 @@ spring: profiles: - active: dev - include: common, util-dev + active: test + include: common, util-test diff --git a/mt/src/main/resources/mapper_dao/CompetePlayerDao.xml b/mt/src/main/resources/mapper_dao/CompetePlayerDao.xml index fc82a267..3cea0ca7 100644 --- a/mt/src/main/resources/mapper_dao/CompetePlayerDao.xml +++ b/mt/src/main/resources/mapper_dao/CompetePlayerDao.xml @@ -307,7 +307,13 @@ t_compete_player p left join t_compete_company c on p.company_id = c.id where p.id_card = #{idCard} + + and + p.id != #{playerId} + and c.type = #{type} + and p.rec_status = 0 + and c.rec_status = 0 \ No newline at end of file diff --git a/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml b/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml index 2591e528..98313489 100644 --- a/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml +++ b/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml @@ -24,6 +24,7 @@ + @@ -196,7 +197,8 @@ pr.`team` as team, if(pr.team = 0,a.plName,b.plName) as playerName, if(pr.team = 0,a.groupName,b.groupName) as groupName, - if(pr.team = 0,a.videoUrl,b.videoUrl) as videoUrl + if(pr.team = 0,a.videoUrl,b.videoUrl) as videoUrl, + if(pr.team = 0,a.ppId,b.teamId) as playerOrTeamId from t_compete_start_order so LEFT JOIN t_compete_project pr on so.project_id = pr.id diff --git a/mt/src/main/resources/mapper_raw/CompeteJudgmentMapper.xml b/mt/src/main/resources/mapper_raw/CompeteJudgmentMapper.xml index 443a9a91..04e31129 100644 --- a/mt/src/main/resources/mapper_raw/CompeteJudgmentMapper.xml +++ b/mt/src/main/resources/mapper_raw/CompeteJudgmentMapper.xml @@ -7,13 +7,14 @@ - + + @@ -74,8 +75,8 @@ - id, name, phone, remark, compete_time_id, site_order_id, project_id, user_id, chief_judgment, - created_at, updated_at, rec_status + id, name, phone, remark, compete_time_id, site, project_id, user_id, chief_judgment, + created_at, updated_at, rec_status, member_id @@ -222,8 +229,8 @@ compete_time_id = #{record.competeTimeId,jdbcType=BIGINT}, - - site_order_id = #{record.siteOrderId,jdbcType=BIGINT}, + + site = #{record.site,jdbcType=INTEGER}, project_id = #{record.projectId,jdbcType=BIGINT}, @@ -243,6 +250,9 @@ rec_status = #{record.recStatus,jdbcType=TINYINT}, + + member_id = #{record.memberId,jdbcType=BIGINT}, + @@ -255,13 +265,14 @@ phone = #{record.phone,jdbcType=VARCHAR}, remark = #{record.remark,jdbcType=VARCHAR}, compete_time_id = #{record.competeTimeId,jdbcType=BIGINT}, - site_order_id = #{record.siteOrderId,jdbcType=BIGINT}, + site = #{record.site,jdbcType=INTEGER}, project_id = #{record.projectId,jdbcType=BIGINT}, user_id = #{record.userId,jdbcType=BIGINT}, chief_judgment = #{record.chiefJudgment,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}, + member_id = #{record.memberId,jdbcType=BIGINT} @@ -281,8 +292,8 @@ compete_time_id = #{competeTimeId,jdbcType=BIGINT}, - - site_order_id = #{siteOrderId,jdbcType=BIGINT}, + + site = #{site,jdbcType=INTEGER}, project_id = #{projectId,jdbcType=BIGINT}, @@ -302,6 +313,9 @@ rec_status = #{recStatus,jdbcType=TINYINT}, + + member_id = #{memberId,jdbcType=BIGINT}, + where id = #{id,jdbcType=BIGINT} @@ -311,13 +325,14 @@ phone = #{phone,jdbcType=VARCHAR}, remark = #{remark,jdbcType=VARCHAR}, compete_time_id = #{competeTimeId,jdbcType=BIGINT}, - site_order_id = #{siteOrderId,jdbcType=BIGINT}, + site = #{site,jdbcType=INTEGER}, project_id = #{projectId,jdbcType=BIGINT}, user_id = #{userId,jdbcType=BIGINT}, chief_judgment = #{chiefJudgment,jdbcType=TINYINT}, created_at = #{createdAt,jdbcType=TIMESTAMP}, updated_at = #{updatedAt,jdbcType=TIMESTAMP}, - rec_status = #{recStatus,jdbcType=TINYINT} + rec_status = #{recStatus,jdbcType=TINYINT}, + member_id = #{memberId,jdbcType=BIGINT} where id = #{id,jdbcType=BIGINT} \ No newline at end of file diff --git a/tall/src/main/java/com/ccsens/tall/bean/vo/RoleVo.java b/tall/src/main/java/com/ccsens/tall/bean/vo/RoleVo.java index 11298007..7e85e912 100644 --- a/tall/src/main/java/com/ccsens/tall/bean/vo/RoleVo.java +++ b/tall/src/main/java/com/ccsens/tall/bean/vo/RoleVo.java @@ -17,4 +17,17 @@ public class RoleVo { @ApiModelProperty("角色名") private String roleName; } + + @Data + @ApiModel("添加时返回成员信息") + public static class MemberInfo{ + @ApiModelProperty("成员id") + private Long memberId; + @ApiModelProperty("成员名") + private String memberName; + @ApiModelProperty("手机号") + private String phone; + @ApiModelProperty("userId") + private Long userId; + } } diff --git a/tall/src/main/java/com/ccsens/tall/service/IProMemberService.java b/tall/src/main/java/com/ccsens/tall/service/IProMemberService.java index 4a31f126..62f5ff00 100644 --- a/tall/src/main/java/com/ccsens/tall/service/IProMemberService.java +++ b/tall/src/main/java/com/ccsens/tall/service/IProMemberService.java @@ -6,6 +6,7 @@ import com.ccsens.tall.bean.po.ProMember; import com.ccsens.tall.bean.po.ProRole; import com.ccsens.tall.bean.vo.MemberVo; import com.ccsens.tall.bean.vo.ProjectVo; +import com.ccsens.tall.bean.vo.RoleVo; import java.util.List; @@ -38,7 +39,7 @@ public interface IProMemberService { * @param saveMember 项目id,角色id,成员姓名和手机号等 * @throws Exception 权限不足异常 */ - void saveProMember(Long currentUserId, MemberDto.SaveMember saveMember) throws Exception; + RoleVo.MemberInfo saveProMember(Long currentUserId, MemberDto.SaveMember saveMember) throws Exception; /** * 删除成员 diff --git a/tall/src/main/java/com/ccsens/tall/service/IProRoleService.java b/tall/src/main/java/com/ccsens/tall/service/IProRoleService.java index 61395f0d..44f43b0e 100644 --- a/tall/src/main/java/com/ccsens/tall/service/IProRoleService.java +++ b/tall/src/main/java/com/ccsens/tall/service/IProRoleService.java @@ -28,7 +28,7 @@ public interface IProRoleService { void deleteRoleByProjectId(Long projectId) throws Exception; - void saveRole(Long currentUserId, RoleDto.SaveRole saveRole); + RoleVo.RoleByProjectId saveRole(Long currentUserId, RoleDto.SaveRole saveRole); ProjectVo.RoleInfo updateRole(Long currentUserId, RoleDto.UpdateRole updateRole); diff --git a/tall/src/main/java/com/ccsens/tall/service/ProMemberService.java b/tall/src/main/java/com/ccsens/tall/service/ProMemberService.java index 2e21c4df..e0515b4a 100644 --- a/tall/src/main/java/com/ccsens/tall/service/ProMemberService.java +++ b/tall/src/main/java/com/ccsens/tall/service/ProMemberService.java @@ -11,6 +11,7 @@ import com.ccsens.tall.bean.dto.ProjectDto; import com.ccsens.tall.bean.po.*; import com.ccsens.tall.bean.vo.MemberVo; import com.ccsens.tall.bean.vo.ProjectVo; +import com.ccsens.tall.bean.vo.RoleVo; import com.ccsens.tall.persist.dao.*; import com.ccsens.tall.persist.mapper.SysImitationMapper; import com.ccsens.util.CodeEnum; @@ -246,7 +247,8 @@ public class ProMemberService implements IProMemberService { } @Override - public void saveProMember(Long currentUserId, MemberDto.SaveMember saveMember) throws Exception { + public RoleVo.MemberInfo saveProMember(Long currentUserId, MemberDto.SaveMember saveMember) throws Exception { + RoleVo.MemberInfo memberInfo = new RoleVo.MemberInfo(); int power = proRoleService.selectPowerByRoleName(currentUserId, saveMember.getProjectId()); if (power > 1) { //用项目id和手机号判断用户是否存在 @@ -265,6 +267,7 @@ public class ProMemberService implements IProMemberService { proMember.setNickname(saveMember.getMemberName()); proMember.setPhone(saveMember.getPhone()); proMember.setUserId(userId); + //获取奖惩干系人 Long stakeholderId = null; if(StrUtil.isNotEmpty(saveMember.getStakeholderPhone())){ @@ -302,6 +305,10 @@ public class ProMemberService implements IProMemberService { } proMember.setStakeholderId(stakeholderId); proMemberDao.insertSelective(proMember); + memberInfo.setMemberId(proMember.getId()); + memberInfo.setMemberName(proMember.getNickname()); + memberInfo.setPhone(proMember.getPhone()); + memberInfo.setUserId(proMember.getUserId()); //添加成员与角色的关联 if(CollectionUtil.isNotEmpty(saveMember.getRoleId())){ saveMember.getRoleId().forEach(roleId -> { @@ -323,6 +330,7 @@ public class ProMemberService implements IProMemberService { } else { throw new BaseException(CodeEnum.NOT_POWER); } + return memberInfo; } @Override diff --git a/tall/src/main/java/com/ccsens/tall/service/ProRoleService.java b/tall/src/main/java/com/ccsens/tall/service/ProRoleService.java index c198cd3e..3feac8a7 100644 --- a/tall/src/main/java/com/ccsens/tall/service/ProRoleService.java +++ b/tall/src/main/java/com/ccsens/tall/service/ProRoleService.java @@ -362,7 +362,7 @@ public class ProRoleService implements IProRoleService { @Override - public void saveRole(Long currentUserId, RoleDto.SaveRole saveRole) { + public RoleVo.RoleByProjectId saveRole(Long currentUserId, RoleDto.SaveRole saveRole) { //检查操作者的权限 int power = selectPowerByRoleName(currentUserId, saveRole.getProjectId()); if (power < 2) { @@ -383,6 +383,10 @@ public class ProRoleService implements IProRoleService { role.setName(saveRole.getRoleName()); role.setParentId(parentId); proRoleDao.insertSelective(role); + RoleVo.RoleByProjectId roleInfo = new RoleVo.RoleByProjectId(); + roleInfo.setRoleId(role.getId()); + roleInfo.setRoleName(role.getName()); + return roleInfo; } @Override diff --git a/tall/src/main/java/com/ccsens/tall/web/MemberController.java b/tall/src/main/java/com/ccsens/tall/web/MemberController.java index 0c2890c6..482f43b7 100644 --- a/tall/src/main/java/com/ccsens/tall/web/MemberController.java +++ b/tall/src/main/java/com/ccsens/tall/web/MemberController.java @@ -3,6 +3,7 @@ package com.ccsens.tall.web; import com.ccsens.tall.bean.dto.MemberDto; import com.ccsens.tall.bean.dto.ProjectDto; import com.ccsens.tall.bean.vo.ProjectVo; +import com.ccsens.tall.bean.vo.RoleVo; import com.ccsens.tall.service.IProMemberService; import com.ccsens.util.JsonResponse; import com.ccsens.util.WebConstant; @@ -38,12 +39,12 @@ public class MemberController { @ApiImplicitParams({ }) @RequestMapping(value = "/save", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) - public JsonResponse saveMember(HttpServletRequest request, - @ApiParam @Validated @RequestBody MemberDto.SaveMember saveMember) throws Exception { + public JsonResponse saveMember(HttpServletRequest request, + @ApiParam @Validated @RequestBody MemberDto.SaveMember saveMember) throws Exception { Long currentUserId = Long.valueOf(((Claims) request.getAttribute(WebConstant.REQUEST_KEY_CLAIMS)).getSubject()); log.info("添加成员:{}",saveMember.toString()); - proMemberService.saveProMember(currentUserId,saveMember); - return JsonResponse.newInstance().ok(); + RoleVo.MemberInfo memberInfo = proMemberService.saveProMember(currentUserId,saveMember); + return JsonResponse.newInstance().ok(memberInfo); } @ApiOperation(value = "删除成员",notes = "") diff --git a/tall/src/main/java/com/ccsens/tall/web/RoleController.java b/tall/src/main/java/com/ccsens/tall/web/RoleController.java index 9fd4b27c..41f21f80 100644 --- a/tall/src/main/java/com/ccsens/tall/web/RoleController.java +++ b/tall/src/main/java/com/ccsens/tall/web/RoleController.java @@ -43,11 +43,11 @@ public class RoleController { @ApiImplicitParams({ }) @RequestMapping(value = "/save", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) - public JsonResponse saveRole(HttpServletRequest request, + public JsonResponse saveRole(HttpServletRequest request, @ApiParam @Validated @RequestBody RoleDto.SaveRole saveRole) throws Exception { Long currentUserId = Long.valueOf(((Claims) request.getAttribute(WebConstant.REQUEST_KEY_CLAIMS)).getSubject()); - proRoleService.saveRole(currentUserId,saveRole); - return JsonResponse.newInstance().ok(); + RoleVo.RoleByProjectId roleInfo = proRoleService.saveRole(currentUserId,saveRole); + return JsonResponse.newInstance().ok(roleInfo); } @ApiOperation(value = "修改角色信息",notes = "") 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 02/13] 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 From 9d4ba71d213c364cb38ff774c78d11addb19b2ca Mon Sep 17 00:00:00 2001 From: "Lihong@123456" <1090591095@qq.com> Date: Tue, 17 Nov 2020 15:42:43 +0800 Subject: [PATCH 03/13] 11-17-3 --- mt/src/main/resources/druid-dev.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mt/src/main/resources/druid-dev.yml b/mt/src/main/resources/druid-dev.yml index 5676a291..8b496426 100644 --- a/mt/src/main/resources/druid-dev.yml +++ b/mt/src/main/resources/druid-dev.yml @@ -32,4 +32,4 @@ spring: username: root validationQuery: SELECT 1 FROM DUAL # env: CCSENS_GAME - env: CCSENS_TALL + env: CCSENS_TALL \ No newline at end of file From 91de2dfadf05ad9bb53f33257a0bcd7254c9201d Mon Sep 17 00:00:00 2001 From: zy_Java <654600784@qq.com> Date: Tue, 17 Nov 2020 16:16:07 +0800 Subject: [PATCH 04/13] 20201117v1.1 --- .../bean/tall/dto/MemberRoleDto.java | 4 ++ .../cloudutil/bean/tall/dto/TallTaskDto.java | 6 +++ .../cloudutil/config/FeignTokenConfig.java | 17 ++++---- .../ccsens/mt/api/CompeteTaskController.java | 13 ++++-- .../ccsens/mt/api/CompeteVideoController.java | 2 +- .../mt/bean/dto/ProvinceCompeteDto.java | 5 ++- .../ccsens/mt/service/CompeteTaskService.java | 40 ++++++++++++++----- .../mt/service/CompeteVedioService.java | 7 +++- .../mt/service/ICompeteTaskService.java | 4 +- .../ccsens/tall/bean/vo/ProjectMessageVo.java | 2 +- tall/src/main/resources/application.yml | 4 +- 11 files changed, 74 insertions(+), 30 deletions(-) diff --git a/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/dto/MemberRoleDto.java b/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/dto/MemberRoleDto.java index bac2a095..d2ec8f6d 100644 --- a/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/dto/MemberRoleDto.java +++ b/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/dto/MemberRoleDto.java @@ -95,6 +95,8 @@ public class MemberRoleDto { private String stakeholderPhone; @ApiModelProperty("奖惩干系人姓名") private String stakeholderName; + @ApiModelProperty("token") + private String token; } @Data @@ -106,6 +108,8 @@ public class MemberRoleDto { @NotEmpty(message = "角色名不能为空") @ApiModelProperty("角色名") private String roleName; + @ApiModelProperty("token") + private String token; } } diff --git a/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/dto/TallTaskDto.java b/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/dto/TallTaskDto.java index e9f3592f..392673ba 100644 --- a/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/dto/TallTaskDto.java +++ b/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/dto/TallTaskDto.java @@ -44,6 +44,8 @@ public class TallTaskDto { private Byte priority; @ApiModelProperty("任务提醒消息") private TaskRemindByAdd taskRemind; + @ApiModelProperty("token") + private String token; } @Data @@ -105,6 +107,8 @@ public class TallTaskDto { private Byte milestone; @ApiModelProperty("需要修改的插件Id") private List plugins; + @ApiModelProperty("token") + private String token; } @Data @@ -123,6 +127,8 @@ public class TallTaskDto { private Byte placeLocation; @ApiModelProperty("程序位置 0:tall内部,1外部") private Byte routineLocation; + @ApiModelProperty("token") + private String token; public UpdatePluginConfig() { } diff --git a/cloudutil/src/main/java/com/ccsens/cloudutil/config/FeignTokenConfig.java b/cloudutil/src/main/java/com/ccsens/cloudutil/config/FeignTokenConfig.java index 41d05117..532ba6e7 100644 --- a/cloudutil/src/main/java/com/ccsens/cloudutil/config/FeignTokenConfig.java +++ b/cloudutil/src/main/java/com/ccsens/cloudutil/config/FeignTokenConfig.java @@ -1,24 +1,27 @@ package com.ccsens.cloudutil.config; +import cn.hutool.json.JSONObject; +import cn.hutool.json.JSONUtil; import feign.RequestInterceptor; import feign.RequestTemplate; -import org.springframework.web.context.request.RequestContextHolder; -import org.springframework.web.context.request.ServletRequestAttributes; +import org.springframework.stereotype.Component; -import javax.servlet.http.HttpServletRequest; /** * @author 逗 */ +@Component public class FeignTokenConfig implements RequestInterceptor { @Override public void apply(RequestTemplate template) { - ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); - if(attributes == null){ + byte[] body = template.body(); + if (body == null) { return; } - HttpServletRequest request = attributes.getRequest(); + String json = new String(body); + JSONObject jsonObject = JSONUtil.parseObj(json); + //添加token - template.header("Authorization", request.getHeader("Authorization")); + template.header("Authorization", jsonObject.get("token").toString()); } } diff --git a/mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java b/mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java index 820f2f70..7ab4efcb 100644 --- a/mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java +++ b/mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java @@ -7,6 +7,7 @@ import com.ccsens.mt.bean.vo.ProvinceCompeteVo; import com.ccsens.mt.bean.vo.TableVo; import com.ccsens.mt.service.ICompeteTaskService; import com.ccsens.util.JsonResponse; +import com.ccsens.util.WebConstant; import com.ccsens.util.bean.dto.QueryDto; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -19,6 +20,7 @@ import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; import java.util.List; /** @@ -46,9 +48,11 @@ public class CompeteTaskController { @ApiOperation(value = "日程安排更新", notes = "zy:1、循环查找项目对应的配置信息。2、有则修改,没有则添加配置信息。" + "3、根据配置的时间和场地生成出场顺序表。4存入出场顺序表。5、调用tall接口添加任务") @RequestMapping(value = "/update", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) - public JsonResponse updateCompeteConfig(@ApiParam @Validated @RequestBody QueryDto params) { + public JsonResponse updateCompeteConfig( + @ApiParam @Validated @RequestBody QueryDto params, HttpServletRequest request) { log.info("日程安排更新:{}",params); - List dailyScheduleProcessList = competeTaskService.updateCompeteProjectConfig(params.getParam()); + String authHeader = request.getHeader(WebConstant.HEADER_KEY_TOKEN); + List dailyScheduleProcessList = competeTaskService.updateCompeteProjectConfig(params.getParam(),authHeader); log.info("日程安排更新:{}",dailyScheduleProcessList); return JsonResponse.newInstance().ok(dailyScheduleProcessList); } @@ -78,9 +82,10 @@ public class CompeteTaskController { @ApiOperation(value = "分配裁判信息", notes = "zy:传入裁判分配信息表,根据内容给每个的项目的每个场次添加裁判信息") @RequestMapping(value = "/allocation/judgment", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) public JsonResponse> allocationJudgment( - @ApiParam @Validated @RequestBody QueryDto params) { + @ApiParam @Validated @RequestBody QueryDto params, HttpServletRequest request) { log.info("分配裁判信息:{}",params); - List queryJudgmentList = competeTaskService.allocationJudgment(params.getParam()); + String authHeader = request.getHeader(WebConstant.HEADER_KEY_TOKEN); + List queryJudgmentList = competeTaskService.allocationJudgment(params.getParam(),authHeader); log.info("分配裁判信息:{}",queryJudgmentList); return JsonResponse.newInstance().ok(queryJudgmentList); } diff --git a/mt/src/main/java/com/ccsens/mt/api/CompeteVideoController.java b/mt/src/main/java/com/ccsens/mt/api/CompeteVideoController.java index ab32b664..771ac9fe 100644 --- a/mt/src/main/java/com/ccsens/mt/api/CompeteVideoController.java +++ b/mt/src/main/java/com/ccsens/mt/api/CompeteVideoController.java @@ -76,7 +76,7 @@ public class CompeteVideoController { @MustLogin @ApiOperation(value = "查看所有二级比赛项目", notes = "Mr.王---------去那个competeProject表下面查") @RequestMapping(value = "/selectTwoProject", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) - public JsonResponse> selectTwoProject(@ApiParam @Validated @RequestBody QueryDto params) { + public JsonResponse> selectTwoProject(@ApiParam @Validated @RequestBody QueryDto params) { log.info("添加用户观看开幕式视频记录(签到用):{}",params); List list=iCompeteVedioService.selectTwoProject(params); diff --git a/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java b/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java index 28ce4650..16314894 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java +++ b/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java @@ -206,6 +206,9 @@ public class ProvinceCompeteDto { @NotNull @ApiModelProperty("Tall当前项目id") private Long projectId; + @NotNull + @ApiModelProperty("Tall内当前角色id") + private Long tallRoleId; @ApiModelProperty("单项时间 单位:秒") private List updateCompeteTaskList; } @@ -219,7 +222,7 @@ public class ProvinceCompeteDto { @ApiModelProperty("单项时间 单位:秒") private long duration; @ApiModelProperty("场地数量") - private int siteNum; + private int siteNum = 1; @ApiModelProperty("项目开始时间") private Long startTime; @ApiModelProperty("项目结束时间") 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 e4d7298b..47861d36 100644 --- a/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java +++ b/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java @@ -72,7 +72,7 @@ public class CompeteTaskService implements ICompeteTaskService{ * 修改项目的日程配置 */ @Override - public List updateCompeteProjectConfig(ProvinceCompeteDto.UpdateCompeteProjectConfig param) { + public List updateCompeteProjectConfig(ProvinceCompeteDto.UpdateCompeteProjectConfig param,String token) { //获取比赛类型 AtomicInteger type = new AtomicInteger(); if(CollectionUtil.isNotEmpty(param.getUpdateCompeteTaskList())){ @@ -106,8 +106,8 @@ public class CompeteTaskService implements ICompeteTaskService{ competeProjectConfig.setEndTime(projectConfig.getEndTime()); projectConfigDao.insertSelective(competeProjectConfig); } - // TODO 生成出场顺序表,存入数据库。在tall内添加对应的任务 - setStartOrder(competeProjectConfig,param.getProjectId()); + // 生成出场顺序表,存入数据库。在tall内添加对应的任务 + setStartOrder(competeProjectConfig,param.getProjectId(),param.getTallRoleId(),token); }); } return projectConfigDao.queryProjectConfig(type.get()); @@ -115,7 +115,7 @@ public class CompeteTaskService implements ICompeteTaskService{ /** * 修改配置时生成出场顺序 */ - public void setStartOrder(CompeteProjectConfig projectConfig, Long tallProjectId) { + public void setStartOrder(CompeteProjectConfig projectConfig, Long tallProjectId,Long tallRoleId,String token) { if (ObjectUtil.isNotNull(projectConfig)) { //查找项目 CompeteProject project = competeProjectDao.selectByPrimaryKey(projectConfig.getProjectId()); @@ -147,11 +147,12 @@ public class CompeteTaskService implements ICompeteTaskService{ if(orderTime > 0 && (competeStartOrder.getStartTime() == projectStartTime || competeStartOrder.getEndTime() == projectStartTime + orderTime)){ competeStartOrder.setStartTime(projectStartTime); competeStartOrder.setEndTime(projectStartTime + orderTime); - // TODO 修改tall的任务 + // 修改tall的任务 TallTaskDto.UpdateTaskInfo updateTaskInfo = new TallTaskDto.UpdateTaskInfo(); updateTaskInfo.setId(competeStartOrder.getId()); updateTaskInfo.setBeginTime(competeStartOrder.getId()); updateTaskInfo.setBeginTime(competeStartOrder.getEndTime()); + updateTaskInfo.setToken(token); tallFeignClient.updataTask(updateTaskInfo); } startOrderMapper.updateByPrimaryKeySelective(competeStartOrder); @@ -164,7 +165,8 @@ public class CompeteTaskService implements ICompeteTaskService{ addTask.setTaskName(project.getName() + competeOrder +"-" + site); addTask.setBeginTime(projectStartTime); addTask.setEndTime(projectStartTime + orderTime); - addTask.setExecutorId(1L); + addTask.setExecutorId(tallRoleId); + addTask.setToken(token); JsonResponse normalTaskJsonResponse = tallFeignClient.saveTask(addTask); if (ObjectUtil.isNotNull(normalTaskJsonResponse)) { TaskVo.NormalTask normalTask = normalTaskJsonResponse.getData(); @@ -219,11 +221,12 @@ public class CompeteTaskService implements ICompeteTaskService{ if(orderTime > 0 && (competeStartOrder.getStartTime() == projectStartTime || competeStartOrder.getEndTime() == projectStartTime + orderTime)){ competeStartOrder.setStartTime(projectStartTime); competeStartOrder.setEndTime(projectStartTime + orderTime); - // TODO 修改tall的任务 + //修改tall的任务 TallTaskDto.UpdateTaskInfo updateTaskInfo = new TallTaskDto.UpdateTaskInfo(); updateTaskInfo.setId(competeStartOrder.getId()); updateTaskInfo.setBeginTime(competeStartOrder.getId()); updateTaskInfo.setBeginTime(competeStartOrder.getEndTime()); + updateTaskInfo.setToken(token); tallFeignClient.updataTask(updateTaskInfo); } startOrderMapper.updateByPrimaryKeySelective(competeStartOrder); @@ -237,6 +240,7 @@ public class CompeteTaskService implements ICompeteTaskService{ addTask.setBeginTime(projectStartTime); addTask.setEndTime(projectStartTime + orderTime); addTask.setExecutorId(1L); + addTask.setToken(token); JsonResponse normalTaskJsonResponse = tallFeignClient.saveTask(addTask); if (ObjectUtil.isNotNull(normalTaskJsonResponse)) { TaskVo.NormalTask normalTask = normalTaskJsonResponse.getData(); @@ -291,7 +295,7 @@ public class CompeteTaskService implements ICompeteTaskService{ * 分配裁判 */ @Override - public List allocationJudgment(ProvinceCompeteDto.AllocationJudgmentAndTall param) { + public List allocationJudgment(ProvinceCompeteDto.AllocationJudgmentAndTall param,String token) { //查找项目 if(CollectionUtil.isNotEmpty(param.getAllocationJudgmentList())){ for(ProvinceCompeteDto.AllocationJudgment allocationJudgment : param.getAllocationJudgmentList()) { @@ -301,7 +305,7 @@ public class CompeteTaskService implements ICompeteTaskService{ allocationJudgment.getSiteJudgmentList().forEach(siteJudgment -> { if (ObjectUtil.isNotNull(siteJudgment)) { siteJudgment.getJudgmentInfoList().forEach(judgmentInfo -> { - saveJudgmentAndTask(param.getCompeteTimeId(),param.getTallProjectId(), project, siteJudgment, judgmentInfo); + saveJudgmentAndTask(param.getCompeteTimeId(),param.getTallProjectId(), project, siteJudgment, judgmentInfo,token); }); } }); @@ -316,7 +320,7 @@ public class CompeteTaskService implements ICompeteTaskService{ * 添加裁判信息和tall内的角色成员任务 */ private void saveJudgmentAndTask(Long competeTimeId,Long tallProjectId,CompeteProject project - , ProvinceCompeteDto.SiteJudgment siteJudgment, ProvinceCompeteDto.JudgmentInfo judgmentInfo) { + , ProvinceCompeteDto.SiteJudgment siteJudgment, ProvinceCompeteDto.JudgmentInfo judgmentInfo,String token) { // TODO 查找该手机号在此项目之前的裁判信息,修改,同时修改tall内的成员角色信息 //添加裁判信息 CompeteJudgment competeJudgment = new CompeteJudgment(); @@ -340,6 +344,7 @@ public class CompeteTaskService implements ICompeteTaskService{ } saveRole.setRoleName(project.getName()+"-场地"+siteJudgment.getSite()+"-"+jdgmentNum); Long roleId = null; + saveRole.setToken(token); JsonResponse memberJsonResponse = tallFeignClient.saveRole(saveRole); if (ObjectUtil.isNotNull(memberJsonResponse)) { MemberVo.RoleInfo roleInfo = memberJsonResponse.getData(); @@ -353,6 +358,7 @@ public class CompeteTaskService implements ICompeteTaskService{ saveMember.setProjectId(tallProjectId); saveMember.setPhone(judgmentInfo.getJudgmentPhone()); saveMember.setRoleId(Arrays.asList(roleId)); + saveMember.setToken(token); tallFeignClient.saveMember(saveMember); //添加任务 //查找场次信息表 @@ -370,7 +376,19 @@ public class CompeteTaskService implements ICompeteTaskService{ addTask.setEndTime(startOrder.getEndTime()); addTask.setExecutorId(roleId); addTask.setParentTaskId(startOrder.getTaskId()); - tallFeignClient.saveTask(addTask); + addTask.setToken(token); + JsonResponse normalTaskJsonResponse = tallFeignClient.saveTask(addTask); + if (ObjectUtil.isNotNull(normalTaskJsonResponse)) { + TaskVo.NormalTask normalTask = normalTaskJsonResponse.getData(); + if (ObjectUtil.isNotNull(normalTask)) { + //修改任务插件配置信息 + TallTaskDto.UpdatePluginConfig updatePluginConfig = new TallTaskDto.UpdatePluginConfig(); + updatePluginConfig.setWebPath("/home/osct/video-score"); + updatePluginConfig.setTaskId(normalTask.getDetailId()); + updatePluginConfig.setToken(token); + tallFeignClient.updatePluginConfig(updatePluginConfig); + } + } } } } diff --git a/mt/src/main/java/com/ccsens/mt/service/CompeteVedioService.java b/mt/src/main/java/com/ccsens/mt/service/CompeteVedioService.java index ef88acdb..55e9c715 100644 --- a/mt/src/main/java/com/ccsens/mt/service/CompeteVedioService.java +++ b/mt/src/main/java/com/ccsens/mt/service/CompeteVedioService.java @@ -4,6 +4,8 @@ import cn.hutool.core.lang.Snowflake; import com.ccsens.mt.bean.dto.VideoDto; import com.ccsens.mt.bean.po.*; import com.ccsens.mt.bean.vo.VideoProjectVo; +import com.ccsens.mt.persist.dao.CompeteTeamDao; +import com.ccsens.mt.persist.dao.CompeteTimeDao; import com.ccsens.mt.persist.dao.CompeteVideoDao; import com.ccsens.mt.persist.mapper.CompeteCompanyMapper; import com.ccsens.mt.persist.mapper.CompetePlayerLookMapper; @@ -40,6 +42,8 @@ public class CompeteVedioService implements ICompeteVedioService{ private CompeteCompanyMapper competeCompanyMapper; @Resource private CompeteVideoDao competeVideoDao; + @Resource + private CompeteTimeDao competeTimeDao; @Override public void insertSignVideo(Long companyId) { @@ -77,8 +81,9 @@ public class CompeteVedioService implements ICompeteVedioService{ @Override public List selectTwoProject(QueryDto params) { + CompeteTime competeTime = competeTimeDao.selectByPrimaryKey(params.getParam().getTeamId()); CompeteProjectExample competeCompanyExample=new CompeteProjectExample(); - competeCompanyExample.createCriteria().andCompeteTimeIdEqualTo(params.getParam().getTeamId()).andLevelEqualTo((byte) 2); + competeCompanyExample.createCriteria().andTypeEqualTo(competeTime.getType()).andLevelEqualTo((byte) 2); List list=competeProjectMapper.selectByExample(competeCompanyExample); List list1=new ArrayList<>(); list.forEach(mes->{ diff --git a/mt/src/main/java/com/ccsens/mt/service/ICompeteTaskService.java b/mt/src/main/java/com/ccsens/mt/service/ICompeteTaskService.java index e1f6586c..eac02350 100644 --- a/mt/src/main/java/com/ccsens/mt/service/ICompeteTaskService.java +++ b/mt/src/main/java/com/ccsens/mt/service/ICompeteTaskService.java @@ -16,7 +16,7 @@ public interface ICompeteTaskService { * @param param * @return */ - List updateCompeteProjectConfig(ProvinceCompeteDto.UpdateCompeteProjectConfig param); + List updateCompeteProjectConfig(ProvinceCompeteDto.UpdateCompeteProjectConfig param,String token); /** * 查找所有项目的日程配置 @@ -44,5 +44,5 @@ public interface ICompeteTaskService { * @param param * @return */ - List allocationJudgment(ProvinceCompeteDto.AllocationJudgmentAndTall param); + List allocationJudgment(ProvinceCompeteDto.AllocationJudgmentAndTall param,String token); } diff --git a/tall/src/main/java/com/ccsens/tall/bean/vo/ProjectMessageVo.java b/tall/src/main/java/com/ccsens/tall/bean/vo/ProjectMessageVo.java index 03b464cd..dfccc08e 100644 --- a/tall/src/main/java/com/ccsens/tall/bean/vo/ProjectMessageVo.java +++ b/tall/src/main/java/com/ccsens/tall/bean/vo/ProjectMessageVo.java @@ -39,7 +39,7 @@ public class ProjectMessageVo { private Byte readStatus; @ApiModelProperty("消息内容") List messages; - @JsonFormat(pattern="yyyy-MM-dd HH:mm", timezone = "GMT-5") + @JsonFormat(pattern="yyyy-MM-dd HH:mm") @ApiModelProperty("发送时间") private Date createTime; } diff --git a/tall/src/main/resources/application.yml b/tall/src/main/resources/application.yml index b5408a3a..ebc544af 100644 --- a/tall/src/main/resources/application.yml +++ b/tall/src/main/resources/application.yml @@ -1,5 +1,5 @@ spring: profiles: - active: dev - include: util-dev,common + active: test + include: util-test,common From 872523ec5acd9f68da77e38c1e9db6ae8ec52ead Mon Sep 17 00:00:00 2001 From: zy_Java <654600784@qq.com> Date: Tue, 17 Nov 2020 16:42:04 +0800 Subject: [PATCH 05/13] 20201117v1.3 --- .../ccsens/mt/service/CompeteTaskService.java | 26 +++++++++++++++---- 1 file changed, 21 insertions(+), 5 deletions(-) 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 47861d36..f320bf6a 100644 --- a/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java +++ b/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java @@ -153,7 +153,9 @@ public class CompeteTaskService implements ICompeteTaskService{ updateTaskInfo.setBeginTime(competeStartOrder.getId()); updateTaskInfo.setBeginTime(competeStartOrder.getEndTime()); updateTaskInfo.setToken(token); + log.info("修改tall的任务信息:{}",updateTaskInfo); tallFeignClient.updataTask(updateTaskInfo); + log.info("修改tall的任务信息后返回:{}",updateTaskInfo); } startOrderMapper.updateByPrimaryKeySelective(competeStartOrder); @@ -167,7 +169,9 @@ public class CompeteTaskService implements ICompeteTaskService{ addTask.setEndTime(projectStartTime + orderTime); addTask.setExecutorId(tallRoleId); addTask.setToken(token); + log.info("在tall内添加任务:{}",addTask); JsonResponse normalTaskJsonResponse = tallFeignClient.saveTask(addTask); + log.info("添加任务后返回:{}",normalTaskJsonResponse); if (ObjectUtil.isNotNull(normalTaskJsonResponse)) { TaskVo.NormalTask normalTask = normalTaskJsonResponse.getData(); if (ObjectUtil.isNotNull(normalTask)) { @@ -227,7 +231,9 @@ public class CompeteTaskService implements ICompeteTaskService{ updateTaskInfo.setBeginTime(competeStartOrder.getId()); updateTaskInfo.setBeginTime(competeStartOrder.getEndTime()); updateTaskInfo.setToken(token); + log.info("修改tall的任务信息:{}",updateTaskInfo); tallFeignClient.updataTask(updateTaskInfo); + log.info("修改tall的任务信息后返回:{}",updateTaskInfo); } startOrderMapper.updateByPrimaryKeySelective(competeStartOrder); @@ -241,7 +247,9 @@ public class CompeteTaskService implements ICompeteTaskService{ addTask.setEndTime(projectStartTime + orderTime); addTask.setExecutorId(1L); addTask.setToken(token); + log.info("在tall内添加任务:{}",addTask); JsonResponse normalTaskJsonResponse = tallFeignClient.saveTask(addTask); + log.info("添加任务后返回:{}",normalTaskJsonResponse); if (ObjectUtil.isNotNull(normalTaskJsonResponse)) { TaskVo.NormalTask normalTask = normalTaskJsonResponse.getData(); if (ObjectUtil.isNotNull(normalTask)) { @@ -345,9 +353,11 @@ public class CompeteTaskService implements ICompeteTaskService{ saveRole.setRoleName(project.getName()+"-场地"+siteJudgment.getSite()+"-"+jdgmentNum); Long roleId = null; saveRole.setToken(token); - JsonResponse memberJsonResponse = tallFeignClient.saveRole(saveRole); - if (ObjectUtil.isNotNull(memberJsonResponse)) { - MemberVo.RoleInfo roleInfo = memberJsonResponse.getData(); + log.info("在tall内添加角色:{}",saveRole); + JsonResponse roleJsonResponse = tallFeignClient.saveRole(saveRole); + log.info("添加角色后返回:{}",roleJsonResponse); + if (ObjectUtil.isNotNull(roleJsonResponse)) { + MemberVo.RoleInfo roleInfo = roleJsonResponse.getData(); if (ObjectUtil.isNotNull(roleInfo)) { roleId = roleInfo.getRoleId(); } @@ -359,7 +369,9 @@ public class CompeteTaskService implements ICompeteTaskService{ saveMember.setPhone(judgmentInfo.getJudgmentPhone()); saveMember.setRoleId(Arrays.asList(roleId)); saveMember.setToken(token); - tallFeignClient.saveMember(saveMember); + log.info("在tall内添加成员:{}",saveMember); + JsonResponse memberJsonResponse = tallFeignClient.saveMember(saveMember); + log.info("添加成员后返回:{}",memberJsonResponse); //添加任务 //查找场次信息表 CompeteStartOrderExample startOrderExample = new CompeteStartOrderExample(); @@ -377,7 +389,9 @@ public class CompeteTaskService implements ICompeteTaskService{ addTask.setExecutorId(roleId); addTask.setParentTaskId(startOrder.getTaskId()); addTask.setToken(token); + log.info("在tall内添加任务:{}",addTask); JsonResponse normalTaskJsonResponse = tallFeignClient.saveTask(addTask); + log.info("添加任务后返回:{}",normalTaskJsonResponse); if (ObjectUtil.isNotNull(normalTaskJsonResponse)) { TaskVo.NormalTask normalTask = normalTaskJsonResponse.getData(); if (ObjectUtil.isNotNull(normalTask)) { @@ -386,7 +400,9 @@ public class CompeteTaskService implements ICompeteTaskService{ updatePluginConfig.setWebPath("/home/osct/video-score"); updatePluginConfig.setTaskId(normalTask.getDetailId()); updatePluginConfig.setToken(token); - tallFeignClient.updatePluginConfig(updatePluginConfig); + log.info("修改tall内任务插件配置:{}",updatePluginConfig); + JsonResponse pluginVoJsonResponse = tallFeignClient.updatePluginConfig(updatePluginConfig); + log.info("修改任务插件配置后返回:{}",pluginVoJsonResponse); } } } From 41589c4f0c64ad9687c94ef5dbe70b713e6f9546 Mon Sep 17 00:00:00 2001 From: "Lihong@123456" <1090591095@qq.com> Date: Tue, 17 Nov 2020 16:54:59 +0800 Subject: [PATCH 06/13] 11-17-4 --- mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml b/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml index 98313489..bb4152df 100644 --- a/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml +++ b/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml @@ -84,8 +84,8 @@ and tcc.id = #{companyId} - - and tcp.name like #{name} + concat('%',#{name, jdbcType=VARCHAR},'%') + and tcp.name like concat('%',#{name, jdbcType=VARCHAR},'%') and tcp.id_card = #{idCard} From 5ea572d786a07e7ea52b7383c69ad9d51fba57b2 Mon Sep 17 00:00:00 2001 From: zy_Java <654600784@qq.com> Date: Tue, 17 Nov 2020 16:56:38 +0800 Subject: [PATCH 07/13] =?UTF-8?q?20201117v1.4=E6=B7=BB=E5=8A=A0=E4=BA=86?= =?UTF-8?q?=E4=B8=80=E7=82=B9=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ccsens/mt/service/CompeteTaskService.java | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) 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 f320bf6a..ad5b8548 100644 --- a/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java +++ b/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java @@ -131,7 +131,12 @@ public class CompeteTaskService implements ICompeteTaskService{ int order = (int) Math.ceil(projectConfig.getSiteNum() / projectPlayerList.size()); //计算每个场次时间 long projectStartTime = projectConfig.getStartTime() + Constant.UPLOAD_VIDEO_TIME; - long orderTime = (long) Math.floor((projectConfig.getEndTime() - projectStartTime) / order); + long orderTime = 0; + if(order == 0) { + orderTime = (long) Math.floor((projectConfig.getEndTime() - projectStartTime) / order); + }else { + log.info("场次为0的比赛:{}",project); + } //场次 int competeOrder = 1; //场地 @@ -209,7 +214,13 @@ public class CompeteTaskService implements ICompeteTaskService{ int order = (int) Math.ceil(projectConfig.getSiteNum() / teamList.size()); //计算每个场次时间 long projectStartTime = projectConfig.getStartTime() + Constant.UPLOAD_VIDEO_TIME; - long orderTime = (long) Math.floor((projectConfig.getEndTime() - projectStartTime) / order); + long orderTime = 0; + if(order == 0) { + orderTime = (long) Math.floor((projectConfig.getEndTime() - projectStartTime) / order); + }else { + log.info("场次为0的比赛:{}",project); + } +// long orderTime = (long) Math.floor((projectConfig.getEndTime() - projectStartTime) / order); //场次 int competeOrder = 1; //场地 From e32effc1c139691fb64e1eb9a457dfb04c1478bb Mon Sep 17 00:00:00 2001 From: zy_Java <654600784@qq.com> Date: Tue, 17 Nov 2020 17:23:44 +0800 Subject: [PATCH 08/13] 20201117v1.5 --- .../mt/bean/dto/ProvinceCompeteDto.java | 4 ++-- .../ccsens/mt/service/CompeteTaskService.java | 21 ++++++++++--------- tall/src/main/resources/application.yml | 4 ++-- 3 files changed, 15 insertions(+), 14 deletions(-) diff --git a/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java b/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java index 16314894..7ae7749b 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java +++ b/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java @@ -224,9 +224,9 @@ public class ProvinceCompeteDto { @ApiModelProperty("场地数量") private int siteNum = 1; @ApiModelProperty("项目开始时间") - private Long startTime; + private Long startTime = 0L; @ApiModelProperty("项目结束时间") - private Long endTime; + private Long endTime = 0L; } @Data 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 ad5b8548..7ad3e855 100644 --- a/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java +++ b/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java @@ -92,8 +92,8 @@ public class CompeteTaskService implements ICompeteTaskService{ competeProjectConfig = projectConfigList.get(0); competeProjectConfig.setProjectDuration(projectConfig.getDuration()); competeProjectConfig.setSiteNum(projectConfig.getSiteNum()); - competeProjectConfig.setStartTime(projectConfig.getStartTime()); - competeProjectConfig.setEndTime(projectConfig.getEndTime()); + competeProjectConfig.setStartTime(projectConfig.getStartTime() == null ? 0 : projectConfig.getStartTime()); + competeProjectConfig.setEndTime(projectConfig.getEndTime() == null ? 0 : projectConfig.getEndTime()); projectConfigDao.updateByPrimaryKeySelective(competeProjectConfig); }else { //没有则添加 @@ -102,8 +102,8 @@ public class CompeteTaskService implements ICompeteTaskService{ competeProjectConfig.setProjectId(projectConfig.getProjectId()); competeProjectConfig.setProjectDuration(projectConfig.getDuration()); competeProjectConfig.setSiteNum(projectConfig.getSiteNum()); - competeProjectConfig.setStartTime(projectConfig.getStartTime()); - competeProjectConfig.setEndTime(projectConfig.getEndTime()); + competeProjectConfig.setStartTime(projectConfig.getStartTime() == null ? 0 : projectConfig.getStartTime()); + competeProjectConfig.setEndTime(projectConfig.getEndTime() == null ? 0 : projectConfig.getEndTime()); projectConfigDao.insertSelective(competeProjectConfig); } // 生成出场顺序表,存入数据库。在tall内添加对应的任务 @@ -116,6 +116,7 @@ public class CompeteTaskService implements ICompeteTaskService{ * 修改配置时生成出场顺序 */ public void setStartOrder(CompeteProjectConfig projectConfig, Long tallProjectId,Long tallRoleId,String token) { + if (ObjectUtil.isNotNull(projectConfig)) { //查找项目 CompeteProject project = competeProjectDao.selectByPrimaryKey(projectConfig.getProjectId()); @@ -128,14 +129,14 @@ public class CompeteTaskService implements ICompeteTaskService{ List projectPlayerList = projectPlayerMapper.selectByExample(projectPlayerExample); if (CollectionUtil.isNotEmpty(projectPlayerList)) { //计算场次 - int order = (int) Math.ceil(projectConfig.getSiteNum() / projectPlayerList.size()); + int order = (int) Math.ceil(projectPlayerList.size() / projectConfig.getSiteNum()); //计算每个场次时间 long projectStartTime = projectConfig.getStartTime() + Constant.UPLOAD_VIDEO_TIME; long orderTime = 0; - if(order == 0) { + if(order != 0) { orderTime = (long) Math.floor((projectConfig.getEndTime() - projectStartTime) / order); }else { - log.info("场次为0的比赛:{}",project); + log.info("场次为0的比赛:{}------{}",project,projectConfig); } //场次 int competeOrder = 1; @@ -211,14 +212,14 @@ public class CompeteTaskService implements ICompeteTaskService{ List teamList = competeTeamDao.selectByExample(teamExample); if(CollectionUtil.isNotEmpty(teamList)){ //计算场次 - int order = (int) Math.ceil(projectConfig.getSiteNum() / teamList.size()); + int order = (int) Math.ceil(teamList.size() / projectConfig.getSiteNum()); //计算每个场次时间 long projectStartTime = projectConfig.getStartTime() + Constant.UPLOAD_VIDEO_TIME; long orderTime = 0; - if(order == 0) { + if(order != 0) { orderTime = (long) Math.floor((projectConfig.getEndTime() - projectStartTime) / order); }else { - log.info("场次为0的比赛:{}",project); + log.info("场次为0的比赛:{}------{}",project,projectConfig); } // long orderTime = (long) Math.floor((projectConfig.getEndTime() - projectStartTime) / order); //场次 diff --git a/tall/src/main/resources/application.yml b/tall/src/main/resources/application.yml index ebc544af..b5408a3a 100644 --- a/tall/src/main/resources/application.yml +++ b/tall/src/main/resources/application.yml @@ -1,5 +1,5 @@ spring: profiles: - active: test - include: util-test,common + active: dev + include: util-dev,common From 2debd348d3e5f6730d4f00927daf9baa9ac5d725 Mon Sep 17 00:00:00 2001 From: zy_Java <654600784@qq.com> Date: Tue, 17 Nov 2020 18:12:11 +0800 Subject: [PATCH 09/13] 20201117v1.6 --- mt/src/main/resources/application.yml | 4 ++-- tall/src/main/java/com/ccsens/tall/web/TaskController.java | 4 +++- tall/src/main/resources/application.yml | 4 ++-- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/mt/src/main/resources/application.yml b/mt/src/main/resources/application.yml index f59084b0..4ecd13fd 100644 --- a/mt/src/main/resources/application.yml +++ b/mt/src/main/resources/application.yml @@ -1,5 +1,5 @@ spring: profiles: - active: test - include: common, util-test + active: dev + include: common, util-dev diff --git a/tall/src/main/java/com/ccsens/tall/web/TaskController.java b/tall/src/main/java/com/ccsens/tall/web/TaskController.java index 16c0de60..ab981f86 100644 --- a/tall/src/main/java/com/ccsens/tall/web/TaskController.java +++ b/tall/src/main/java/com/ccsens/tall/web/TaskController.java @@ -10,6 +10,7 @@ import com.ccsens.util.WebConstant; import com.ccsens.util.annotation.OperateType; import io.jsonwebtoken.Claims; import io.swagger.annotations.*; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -17,6 +18,7 @@ import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import java.util.List; +@Slf4j @Api(tags = "任务相关API" , description = "") @RestController @RequestMapping("/tasks") @@ -224,7 +226,7 @@ public class TaskController { public JsonResponse addTask(HttpServletRequest request, @ApiParam @Validated @RequestBody TaskDto.AddTask addTask) throws Exception { Long currentUserId = Long.valueOf(((Claims) request.getAttribute(WebConstant.REQUEST_KEY_CLAIMS)).getSubject()); - + log.info("新加任务,userId:{}、任务信息:{}",currentUserId,addTask); TaskVo.NormalTask normalTask = subTimeService.addTask(currentUserId,addTask); return JsonResponse.newInstance().ok(normalTask); } diff --git a/tall/src/main/resources/application.yml b/tall/src/main/resources/application.yml index b5408a3a..ebc544af 100644 --- a/tall/src/main/resources/application.yml +++ b/tall/src/main/resources/application.yml @@ -1,5 +1,5 @@ spring: profiles: - active: dev - include: util-dev,common + active: test + include: util-test,common From cc5ed3f831195be0a3a3a6b79894ecd7b785e71f Mon Sep 17 00:00:00 2001 From: "Lihong@123456" <1090591095@qq.com> Date: Wed, 18 Nov 2020 11:01:16 +0800 Subject: [PATCH 10/13] 11-18-1 --- .../com/ccsens/mt/api/ExcelController.java | 6 +- .../java/com/ccsens/mt/bean/vo/TableVo.java | 30 ++++--- .../com/ccsens/mt/service/ExcelService.java | 87 ++++++++++--------- .../com/ccsens/mt/service/IExcelService.java | 2 +- mt/src/main/resources/application.yml | 4 +- .../mapper_dao/CompeteProjectConfigDao.xml | 46 ++++++++-- tall/src/main/resources/application.yml | 1 - 7 files changed, 107 insertions(+), 69 deletions(-) diff --git a/mt/src/main/java/com/ccsens/mt/api/ExcelController.java b/mt/src/main/java/com/ccsens/mt/api/ExcelController.java index 9768148a..80ea10e5 100644 --- a/mt/src/main/java/com/ccsens/mt/api/ExcelController.java +++ b/mt/src/main/java/com/ccsens/mt/api/ExcelController.java @@ -117,9 +117,9 @@ public class ExcelController { @MustLogin @ApiOperation(value = "日程安排(导出)", notes = "") @RequestMapping(value = "/schedulePlanning", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) - public JsonResponse schedulePlanning(@ApiParam @Validated @RequestBody QueryDto params) { + public JsonResponse schedulePlanning(@ApiParam @Validated @RequestBody QueryDto params) { log.info("日程安排更新:{}",params); - TableVo.SchedulePlan schedulePlanDetailAllInList = excelService.schedulePlanning(params.getParam()); - return JsonResponse.newInstance().ok(schedulePlanDetailAllInList); + List schedulePlanDetailList = excelService.schedulePlanning(params.getParam()); + return JsonResponse.newInstance().ok(schedulePlanDetailList); } } diff --git a/mt/src/main/java/com/ccsens/mt/bean/vo/TableVo.java b/mt/src/main/java/com/ccsens/mt/bean/vo/TableVo.java index 48fec61e..6b7698ff 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/vo/TableVo.java +++ b/mt/src/main/java/com/ccsens/mt/bean/vo/TableVo.java @@ -180,13 +180,25 @@ public class TableVo { } + @Data + @ApiModel("日程安排上下午") + public static class SchedulePlanAll{ + @ApiModelProperty("项目所属日期") + private List schedulePlanList; + + } + @Data @ApiModel("日程安排上下午") public static class SchedulePlan{ + @ApiModelProperty("项目所属日期") + private String date; @ApiModelProperty("安排详情上午") - private List schedulePlanDetailListUp; + private List schedulePlanDetailListMorning; @ApiModelProperty("安排详情下午") - private List schedulePlanDetailListDown; + private List schedulePlanDetailListAfternoon; + @ApiModelProperty("安排详情晚上") + private List schedulePlanDetailListNight; } @Data @@ -194,21 +206,13 @@ public class TableVo { public static class SchedulePlanDetail{ @ApiModelProperty("参赛项目") private String projectName; - @ApiModelProperty("项目开始时间") + @ApiModelProperty("上午项目开始时间") private Long startTime; @ApiModelProperty("项目结束时间") private Long endTime; - @ApiModelProperty("项目所属日期") - private Long data; } - @Data - @ApiModel("日程安排组合") - public static class SchedulePlanDetailAllIn{ - @ApiModelProperty("字符拼接") - private String string; - @ApiModelProperty("项目所属日期") - private String data; - } + + } diff --git a/mt/src/main/java/com/ccsens/mt/service/ExcelService.java b/mt/src/main/java/com/ccsens/mt/service/ExcelService.java index 6e9cd59c..24fc463a 100644 --- a/mt/src/main/java/com/ccsens/mt/service/ExcelService.java +++ b/mt/src/main/java/com/ccsens/mt/service/ExcelService.java @@ -1292,50 +1292,55 @@ public class ExcelService implements IExcelService { } @Override - public TableVo.SchedulePlan schedulePlanning(CompeteDto.CompeteTime params) { - List schedulePlanDetailListUp = new ArrayList<>(); - List schedulePlanDetailListDown = new ArrayList<>(); + public List schedulePlanning(CompeteDto.CompeteTime params) { + List schedulePlanDetailListMorning = new ArrayList<>(); + List schedulePlanDetailListAfternoon = new ArrayList<>(); + List schedulePlanDetailListNight = new ArrayList<>(); +// List schedulePlanList = new ArrayList<>(); //关联查询项目名,该项目在config和project中都存在 List schedulePlanDetailList = competeProjectConfigDao.selectDetail(); - TableVo.SchedulePlan schedulePlan = new TableVo.SchedulePlan(); - if (CollectionUtil.isNotEmpty(schedulePlanDetailList)) { - for (TableVo.SchedulePlanDetail schedulePlanDetail : schedulePlanDetailList) { - //项目名 - String projectName = schedulePlanDetail.getProjectName(); - //开始时间yyyy-MM-dd HH:mm:ss - long startTime = schedulePlanDetail.getStartTime(); - Date date = new Date(startTime); - SimpleDateFormat simpleDateFormat = new SimpleDateFormat("HH:mm"); - String sm = simpleDateFormat.format(date); - //结束时间 - long endTime = schedulePlanDetail.getEndTime(); - Date date1 = new Date(endTime); - SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("HH:mm"); - String em = simpleDateFormat1.format(date1); - //拼接 - String string = projectName + "(" + sm + "-" + em + ")"; - //项目开始日期 - SimpleDateFormat simpleDateFormat2 = new SimpleDateFormat("MM-dd"); - String md = simpleDateFormat2.format(date); - //上午项目 - if (Integer.parseInt(sm.substring(0, 2)) >= 6 && Integer.parseInt(sm.substring(0, 2)) <= 12) { - TableVo.SchedulePlanDetailAllIn schedulePlanDetailAllIn = new TableVo.SchedulePlanDetailAllIn(); - schedulePlanDetailAllIn.setData(md); - schedulePlanDetailAllIn.setString(string); - schedulePlanDetailListUp.add(schedulePlanDetailAllIn); - }//下午项目 - else if (Integer.parseInt(sm.substring(0, 2)) > 12 && Integer.parseInt(sm.substring(0, 2)) <= 18) { - TableVo.SchedulePlanDetailAllIn schedulePlanDetailAllIn1 = new TableVo.SchedulePlanDetailAllIn(); - schedulePlanDetailAllIn1.setData(md); - schedulePlanDetailAllIn1.setString(string); - schedulePlanDetailListDown.add(schedulePlanDetailAllIn1); - } - } - schedulePlan.setSchedulePlanDetailListDown(schedulePlanDetailListDown); - schedulePlan.setSchedulePlanDetailListUp(schedulePlanDetailListUp); - } - return schedulePlan; +// TableVo.SchedulePlanAll schedulePlanAll = new TableVo.SchedulePlanAll(); +// Set set = new HashSet(); +// if (CollectionUtil.isNotEmpty(schedulePlanDetailList)) { +// for (TableVo.SchedulePlanDetail schedulePlanDetail : schedulePlanDetailList) { +// //开始时间yyyy-MM-dd HH:mm:ss +// long startTime = schedulePlanDetail.getStartTime(); +// Date date = new Date(startTime); +// SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); +// String sm = simpleDateFormat.format(date); +// set.add(sm); +// //结束时间 +// long endTime = schedulePlanDetail.getEndTime(); +// Date date1 = new Date(endTime); +// SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("HH:mm"); +// String em = simpleDateFormat1.format(date1); + //当前项目开始日期 +// SimpleDateFormat simpleDateFormat2 = new SimpleDateFormat("MM-dd"); +// String sd = simpleDateFormat2.format(date); +// //上个项目开始日期 +// TableVo.SchedulePlanDetail schedulePlanDetail1 = schedulePlanDetailList.get(1); +// long startTime1 = schedulePlanDetail.getStartTime(); +// Date date1 = new Date(startTime); +// String sd1 = simpleDateFormat2.format(date1); + //上午项目 +// if (Integer.parseInt(sm.substring(0, 2)) >= 6 && Integer.parseInt(sm.substring(0, 2)) <= 12) { +// schedulePlanDetailListMorning.add(schedulePlanDetail); +// for (TableVo.SchedulePlanDetail schedulePlanDetail1 :schedulePlanDetailListMorning){ +// +// } +// }//下午项目 +// else if (Integer.parseInt(sm.substring(0, 2)) > 12 && Integer.parseInt(sm.substring(0, 2)) <= 18) { +// schedulePlanDetailListAfternoon.add(schedulePlanDetail); +// }//晚上 +// else if (Integer.parseInt(sm.substring(0, 2)) > 18 && Integer.parseInt(sm.substring(0, 2)) <= 24){ +// schedulePlanDetailListNight.add(schedulePlanDetail); +// } +// } +// +// +// } + return schedulePlanDetailList; } } diff --git a/mt/src/main/java/com/ccsens/mt/service/IExcelService.java b/mt/src/main/java/com/ccsens/mt/service/IExcelService.java index b941bda3..29fb90a6 100644 --- a/mt/src/main/java/com/ccsens/mt/service/IExcelService.java +++ b/mt/src/main/java/com/ccsens/mt/service/IExcelService.java @@ -82,6 +82,6 @@ public interface IExcelService { * @param params 大赛id * @return 返回失败的信息 */ - TableVo.SchedulePlan schedulePlanning(CompeteDto.CompeteTime params); + List schedulePlanning(CompeteDto.CompeteTime params); } diff --git a/mt/src/main/resources/application.yml b/mt/src/main/resources/application.yml index f59084b0..4ecd13fd 100644 --- a/mt/src/main/resources/application.yml +++ b/mt/src/main/resources/application.yml @@ -1,5 +1,5 @@ spring: profiles: - active: test - include: common, util-test + active: dev + include: common, util-dev diff --git a/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml b/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml index bb4152df..86c4dd88 100644 --- a/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml +++ b/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml @@ -31,17 +31,47 @@ + + + + + + + + + + + + + + - + SELECT + FROM_UNIXTIME(start_time/1000,'%y-%m-%d') as startDate, + if(a.aa = 1,p.`name`,null) as projectName, + if(a.aa = 0,p.`name`,null) as projectNamep, + if(a.aa = 1,c.start_time,null) as start_time, + if(a.aa = 0,c.start_time,null) as start_timeP, + if(a.aa = 1,c.end_time,null) as endTime, + if(a.aa = 0,c.end_time,null) as endTimeP + + FROM + `t_compete_project_config` c + LEFT JOIN t_compete_project p on c.project_id = p.id + LEFT JOIN ( + SELECT + id, + if(FROM_UNIXTIME(start_time/1000,'%h') <= 5,1 ,0) as aa + FROM + t_compete_project_config + )a on c.id = a.id + where c.project_id = p.id + ORDER BY c.start_time diff --git a/tall/src/main/java/com/ccsens/tall/web/TaskController.java b/tall/src/main/java/com/ccsens/tall/web/TaskController.java index ab981f86..e7850019 100644 --- a/tall/src/main/java/com/ccsens/tall/web/TaskController.java +++ b/tall/src/main/java/com/ccsens/tall/web/TaskController.java @@ -228,6 +228,7 @@ public class TaskController { Long currentUserId = Long.valueOf(((Claims) request.getAttribute(WebConstant.REQUEST_KEY_CLAIMS)).getSubject()); log.info("新加任务,userId:{}、任务信息:{}",currentUserId,addTask); TaskVo.NormalTask normalTask = subTimeService.addTask(currentUserId,addTask); + log.info("添加的任务的信息:{}",normalTask); return JsonResponse.newInstance().ok(normalTask); } diff --git a/tall/src/main/resources/application.yml b/tall/src/main/resources/application.yml index ebc544af..b5408a3a 100644 --- a/tall/src/main/resources/application.yml +++ b/tall/src/main/resources/application.yml @@ -1,5 +1,5 @@ spring: profiles: - active: test - include: util-test,common + active: dev + include: util-dev,common From 54b0d54cf7efcd9d8294532380bea8d370c4009b Mon Sep 17 00:00:00 2001 From: zy_Java <654600784@qq.com> Date: Wed, 18 Nov 2020 14:05:27 +0800 Subject: [PATCH 12/13] 20201118v1.2 --- .../ccsens/mt/api/CompeteTaskController.java | 10 ++++ .../mt/bean/dto/ProvinceCompeteDto.java | 9 ++- .../ccsens/mt/bean/po/CompeteJudgment.java | 11 ++++ .../mt/bean/po/CompeteJudgmentExample.java | 60 +++++++++++++++++++ .../ccsens/mt/bean/vo/ProvinceCompeteVo.java | 16 +++++ .../persist/dao/CompeteProjectConfigDao.java | 7 +++ .../ccsens/mt/service/CompeteTaskService.java | 23 +++++++ .../mt/service/ICompeteTaskService.java | 7 +++ .../mapper_dao/CompeteProjectConfigDao.xml | 13 ++++ .../mapper_raw/CompeteJudgmentMapper.xml | 25 ++++++-- 10 files changed, 175 insertions(+), 6 deletions(-) diff --git a/mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java b/mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java index 7ab4efcb..952debdd 100644 --- a/mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java +++ b/mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java @@ -90,4 +90,14 @@ public class CompeteTaskController { return JsonResponse.newInstance().ok(queryJudgmentList); } + @MustLogin + @ApiOperation(value = "查看裁判身份,场次id和比赛项目id等信息", notes = "zy:通过tall内的roleId和detailId,获取裁判的身份,比赛项目相关的信息") + @RequestMapping(value = "/query/projectByTall", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse queryProjectByTall( + @ApiParam @Validated @RequestBody QueryDto params) { + log.info("查看裁判身份场次id:{}",params); + ProvinceCompeteVo.QueryProjectByTall queryProjectByTall = competeTaskService.queryProjectByTall(params.getParam()); + log.info("查看裁判身份场次id:{}",queryProjectByTall); + return JsonResponse.newInstance().ok(queryProjectByTall); + } } diff --git a/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java b/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java index 48a552ca..ce78afce 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java +++ b/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java @@ -289,5 +289,12 @@ public class ProvinceCompeteDto { @ApiModelProperty("备注") private String remark; } - + @Data + @ApiModel("通过tall查看裁判和项目的信息") + public static class ProjectByTall{ + @ApiModelProperty("tall内的任务详情id") + private Long taskDetailId; + @ApiModelProperty("tall内的角色id") + private Long roleId; + } } diff --git a/mt/src/main/java/com/ccsens/mt/bean/po/CompeteJudgment.java b/mt/src/main/java/com/ccsens/mt/bean/po/CompeteJudgment.java index b0fec397..15401e81 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/po/CompeteJudgment.java +++ b/mt/src/main/java/com/ccsens/mt/bean/po/CompeteJudgment.java @@ -30,6 +30,8 @@ public class CompeteJudgment implements Serializable { private Long memberId; + private Long roleId; + private static final long serialVersionUID = 1L; public Long getId() { @@ -136,6 +138,14 @@ public class CompeteJudgment implements Serializable { this.memberId = memberId; } + public Long getRoleId() { + return roleId; + } + + public void setRoleId(Long roleId) { + this.roleId = roleId; + } + @Override public String toString() { StringBuilder sb = new StringBuilder(); @@ -155,6 +165,7 @@ public class CompeteJudgment implements Serializable { sb.append(", updatedAt=").append(updatedAt); sb.append(", recStatus=").append(recStatus); sb.append(", memberId=").append(memberId); + sb.append(", roleId=").append(roleId); sb.append("]"); return sb.toString(); } diff --git a/mt/src/main/java/com/ccsens/mt/bean/po/CompeteJudgmentExample.java b/mt/src/main/java/com/ccsens/mt/bean/po/CompeteJudgmentExample.java index db725b61..695a1b2c 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/po/CompeteJudgmentExample.java +++ b/mt/src/main/java/com/ccsens/mt/bean/po/CompeteJudgmentExample.java @@ -914,6 +914,66 @@ public class CompeteJudgmentExample { addCriterion("member_id not between", value1, value2, "memberId"); return (Criteria) this; } + + public Criteria andRoleIdIsNull() { + addCriterion("role_id is null"); + return (Criteria) this; + } + + public Criteria andRoleIdIsNotNull() { + addCriterion("role_id is not null"); + return (Criteria) this; + } + + public Criteria andRoleIdEqualTo(Long value) { + addCriterion("role_id =", value, "roleId"); + return (Criteria) this; + } + + public Criteria andRoleIdNotEqualTo(Long value) { + addCriterion("role_id <>", value, "roleId"); + return (Criteria) this; + } + + public Criteria andRoleIdGreaterThan(Long value) { + addCriterion("role_id >", value, "roleId"); + return (Criteria) this; + } + + public Criteria andRoleIdGreaterThanOrEqualTo(Long value) { + addCriterion("role_id >=", value, "roleId"); + return (Criteria) this; + } + + public Criteria andRoleIdLessThan(Long value) { + addCriterion("role_id <", value, "roleId"); + return (Criteria) this; + } + + public Criteria andRoleIdLessThanOrEqualTo(Long value) { + addCriterion("role_id <=", value, "roleId"); + return (Criteria) this; + } + + public Criteria andRoleIdIn(List values) { + addCriterion("role_id in", values, "roleId"); + return (Criteria) this; + } + + public Criteria andRoleIdNotIn(List values) { + addCriterion("role_id not in", values, "roleId"); + return (Criteria) this; + } + + public Criteria andRoleIdBetween(Long value1, Long value2) { + addCriterion("role_id between", value1, value2, "roleId"); + return (Criteria) this; + } + + public Criteria andRoleIdNotBetween(Long value1, Long value2) { + addCriterion("role_id not between", value1, value2, "roleId"); + return (Criteria) this; + } } public static class Criteria extends GeneratedCriteria { 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 528f1cee..d8796b19 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 @@ -317,4 +317,20 @@ public class ProvinceCompeteVo { } + @Data + @ApiModel("通过tall获取裁判和项目信息") + public static class QueryProjectByTall { + @ApiModelProperty("裁判身份") + private int judgmentNum; + @ApiModelProperty("裁判id") + private Long judgmentId; + @ApiModelProperty("场次id(出场顺序表的id)") + private Long startOrderId; + @ApiModelProperty("比赛项目id") + private Long projectId; + @ApiModelProperty("比赛项目的类型 0计数赛 1花样赛") + private int projectType; + } + + } diff --git a/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteProjectConfigDao.java b/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteProjectConfigDao.java index 795bf50e..8d50f6ef 100644 --- a/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteProjectConfigDao.java +++ b/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteProjectConfigDao.java @@ -36,4 +36,11 @@ public interface CompeteProjectConfigDao extends CompeteProjectConfigMapper { * @return 返回选手列表 */ List queryStartOrderByCompany(@Param("companyId")Long companyId, @Param("projectId")Long projectId, @Param("competeTimeId")Long competeTimeId); + + /** + * 通过taskDetailId查询比赛场次和项目信息 + * @param taskDetailId 任务详情id + * @return 返回比赛项目信息 + */ + ProvinceCompeteVo.QueryProjectByTall queryProjectByTaskDetailId(@Param("taskDetailId")Long taskDetailId); } \ No newline at end of file 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 491f6aec..09622578 100644 --- a/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java +++ b/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java @@ -410,6 +410,7 @@ public class CompeteTaskService implements ICompeteTaskService{ log.info("在tall内添加成员:{}",saveMember); JsonResponse memberJsonResponse = tallFeignClient.saveMember(saveMember); log.info("添加成员后返回:{}",memberJsonResponse); + //如果成员已存在, //添加任务 //查找场次信息表 CompeteStartOrderExample startOrderExample = new CompeteStartOrderExample(); @@ -446,4 +447,26 @@ public class CompeteTaskService implements ICompeteTaskService{ } } } + + /** + * 通过tall查看裁判和比赛项目的信息 + */ + @Override + public ProvinceCompeteVo.QueryProjectByTall queryProjectByTall(ProvinceCompeteDto.ProjectByTall param) { + //查询比赛项目信息 + ProvinceCompeteVo.QueryProjectByTall queryProjectByTall = projectConfigDao.queryProjectByTaskDetailId(param.getTaskDetailId()); + log.info("根据taskDetailId查询到的场次和项目信息:{}",queryProjectByTall); + //查询裁判信息 + CompeteJudgment judgment = new CompeteJudgment(); + CompeteJudgmentExample judgmentExample = new CompeteJudgmentExample(); + judgmentExample.createCriteria().andRoleIdEqualTo(param.getRoleId()); + List judgmentList = competeJudgmentDao.selectByExample(judgmentExample); + if(CollectionUtil.isNotEmpty(judgmentList)){ + judgment = judgmentList.get(0); + } + log.info("根据roleId查询到的裁判信息:{}",judgment); + queryProjectByTall.setJudgmentId(judgment.getId()); + queryProjectByTall.setJudgmentNum(judgment.getChiefJudgment()); + return queryProjectByTall; + } } diff --git a/mt/src/main/java/com/ccsens/mt/service/ICompeteTaskService.java b/mt/src/main/java/com/ccsens/mt/service/ICompeteTaskService.java index eac02350..e818f955 100644 --- a/mt/src/main/java/com/ccsens/mt/service/ICompeteTaskService.java +++ b/mt/src/main/java/com/ccsens/mt/service/ICompeteTaskService.java @@ -45,4 +45,11 @@ public interface ICompeteTaskService { * @return */ List allocationJudgment(ProvinceCompeteDto.AllocationJudgmentAndTall param,String token); + + /** + * 通过tall的任务id和角色id查询裁判和比赛项目的信息 + * @param param + * @return + */ + ProvinceCompeteVo.QueryProjectByTall queryProjectByTall(ProvinceCompeteDto.ProjectByTall param); } diff --git a/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml b/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml index 86c4dd88..5b4155f4 100644 --- a/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml +++ b/mt/src/main/resources/mapper_dao/CompeteProjectConfigDao.xml @@ -279,6 +279,19 @@ and pr.rec_status = 0 ORDER BY so.start_time + \ No newline at end of file diff --git a/mt/src/main/resources/mapper_raw/CompeteJudgmentMapper.xml b/mt/src/main/resources/mapper_raw/CompeteJudgmentMapper.xml index 04e31129..f20b6367 100644 --- a/mt/src/main/resources/mapper_raw/CompeteJudgmentMapper.xml +++ b/mt/src/main/resources/mapper_raw/CompeteJudgmentMapper.xml @@ -15,6 +15,7 @@ + @@ -76,7 +77,7 @@ id, name, phone, remark, compete_time_id, site, project_id, user_id, chief_judgment, - created_at, updated_at, rec_status, member_id + created_at, updated_at, rec_status, member_id, role_id @@ -253,6 +260,9 @@ member_id = #{record.memberId,jdbcType=BIGINT}, + + role_id = #{record.roleId,jdbcType=BIGINT}, + @@ -272,7 +282,8 @@ created_at = #{record.createdAt,jdbcType=TIMESTAMP}, updated_at = #{record.updatedAt,jdbcType=TIMESTAMP}, rec_status = #{record.recStatus,jdbcType=TINYINT}, - member_id = #{record.memberId,jdbcType=BIGINT} + member_id = #{record.memberId,jdbcType=BIGINT}, + role_id = #{record.roleId,jdbcType=BIGINT} @@ -316,6 +327,9 @@ member_id = #{memberId,jdbcType=BIGINT}, + + role_id = #{roleId,jdbcType=BIGINT}, + where id = #{id,jdbcType=BIGINT} @@ -332,7 +346,8 @@ created_at = #{createdAt,jdbcType=TIMESTAMP}, updated_at = #{updatedAt,jdbcType=TIMESTAMP}, rec_status = #{recStatus,jdbcType=TINYINT}, - member_id = #{memberId,jdbcType=BIGINT} + member_id = #{memberId,jdbcType=BIGINT}, + role_id = #{roleId,jdbcType=BIGINT} where id = #{id,jdbcType=BIGINT} \ No newline at end of file From da0a44a27122a0365198371201a831e904a57588 Mon Sep 17 00:00:00 2001 From: zy_Java <654600784@qq.com> Date: Wed, 18 Nov 2020 19:58:15 +0800 Subject: [PATCH 13/13] 20201118v1.5 --- .../bean/tall/dto/MemberRoleDto.java | 23 ++ .../cloudutil/bean/tall/vo/MemberVo.java | 10 + .../cloudutil/feign/TallFeignClient.java | 23 ++ .../ccsens/mt/api/CompeteScoreController.java | 13 +- .../ccsens/mt/api/CompeteTaskController.java | 2 +- .../mt/bean/dto/ProvinceCompeteDto.java | 9 + .../java/com/ccsens/mt/bean/dto/VideoDto.java | 2 +- .../java/com/ccsens/mt/bean/vo/CompeteVo.java | 20 +- .../java/com/ccsens/mt/bean/vo/ScoreVo.java | 6 +- .../com/ccsens/mt/bean/vo/VideoProjectVo.java | 4 +- .../mt/persist/dao/CompeteJudgmentDao.java | 2 +- .../mt/persist/dao/CompeteScoreDao.java | 12 + .../ccsens/mt/persist/dao/CompeteTimeDao.java | 7 + .../com/ccsens/mt/service/CompeteService.java | 30 ++- .../ccsens/mt/service/CompeteTaskService.java | 205 +++++++++++------- .../mt/service/CompeteVedioService.java | 25 ++- .../ccsens/mt/service/ICompeteService.java | 6 + .../mt/service/ICompeteTaskService.java | 2 +- .../ccsens/mt/service/ProvinceService.java | 9 + .../mapper_dao/CompeteJudgmentDao.xml | 3 + .../resources/mapper_dao/CompeteScoreDao.xml | 50 +++++ .../resources/mapper_dao/CompeteTimeDao.xml | 13 ++ .../com/ccsens/tall/bean/dto/MemberDto.java | 9 + .../java/com/ccsens/tall/bean/vo/TaskVo.java | 1 - .../tall/service/IProMemberService.java | 7 + .../ccsens/tall/service/ProMemberService.java | 15 ++ .../com/ccsens/tall/web/MemberController.java | 11 +- 27 files changed, 401 insertions(+), 118 deletions(-) diff --git a/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/dto/MemberRoleDto.java b/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/dto/MemberRoleDto.java index d2ec8f6d..25f734d0 100644 --- a/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/dto/MemberRoleDto.java +++ b/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/dto/MemberRoleDto.java @@ -112,4 +112,27 @@ public class MemberRoleDto { private String token; } + @Data + @ApiModel + public static class GetMemberByPhone{ + @ApiModelProperty("项目id") + private Long projectId; + @ApiModelProperty("手机号") + private String phone; + @ApiModelProperty("token") + private String token; + } + + + @Data + @ApiModel("给角色添加成员") + public static class SaveMemberInRole{ + @NotNull(message = "角色Id不能为空") + @ApiModelProperty("角色id") + private Long roleId; + @ApiModelProperty("成员Id") + private Long memberId; + @ApiModelProperty("token") + private String token; + } } diff --git a/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/vo/MemberVo.java b/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/vo/MemberVo.java index 5050a6f9..a8849305 100644 --- a/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/vo/MemberVo.java +++ b/cloudutil/src/main/java/com/ccsens/cloudutil/bean/tall/vo/MemberVo.java @@ -42,4 +42,14 @@ public class MemberVo { @ApiModelProperty("userId") private Long userId; } + + + @Data + @ApiModel("查找项目内所有的成员") + public static class MemberList{ + @ApiModelProperty("成员id") + private Long memberId; + @ApiModelProperty("成员名") + private String memberName; + } } 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 28e2b13f..86337fd7 100644 --- a/cloudutil/src/main/java/com/ccsens/cloudutil/feign/TallFeignClient.java +++ b/cloudutil/src/main/java/com/ccsens/cloudutil/feign/TallFeignClient.java @@ -214,6 +214,19 @@ public interface TallFeignClient { */ @RequestMapping("/members/save") JsonResponse saveMember(MemberRoleDto.SaveMember saveMember); + + /** + * 将成员添加至角色内 + */ + @RequestMapping("/roles/saveMember") + JsonResponse saveMemberInRole(MemberRoleDto.SaveMemberInRole saveMember); + + + /** + * 通过手机号和项目id查询成员信息 + */ + @RequestMapping("/members/query/memberByPhone") + JsonResponse queryMemberByPhone(MemberRoleDto.GetMemberByPhone getMemberByPhone); } @Slf4j @@ -356,6 +369,16 @@ class TallFeignClientFallBack implements FallbackFactory { public JsonResponse saveMember(MemberRoleDto.SaveMember saveMember) { return JsonResponse.newInstance().fail(); } + + @Override + public JsonResponse saveMemberInRole(MemberRoleDto.SaveMemberInRole saveMember) { + return JsonResponse.newInstance().fail(); + } + + @Override + public JsonResponse queryMemberByPhone(MemberRoleDto.GetMemberByPhone getMemberByPhone) { + return JsonResponse.newInstance().fail(); + } }; } diff --git a/mt/src/main/java/com/ccsens/mt/api/CompeteScoreController.java b/mt/src/main/java/com/ccsens/mt/api/CompeteScoreController.java index 6bff8f81..17421f36 100644 --- a/mt/src/main/java/com/ccsens/mt/api/CompeteScoreController.java +++ b/mt/src/main/java/com/ccsens/mt/api/CompeteScoreController.java @@ -42,8 +42,6 @@ public class CompeteScoreController { return JsonResponse.newInstance().ok(playerList); } - - @MustLogin @ApiOperation(value = "花样赛提交分数", notes = "Mr.王----提交成绩到那个花样赛得表里面就行了,单表操作") @RequestMapping(value = "/submitOrderList", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) @@ -89,6 +87,17 @@ public class CompeteScoreController { return JsonResponse.newInstance().ok(countScoreCurrentSites); } + + @MustLogin + @ApiOperation(value = "查看计数赛成绩公示表", notes = "多表关联之后,查询当前你场次得分数信息") + @RequestMapping(value = "/query/countScoreAll", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse queryCountScoreAll(@ApiParam @Validated @RequestBody QueryDto params) { + log.info("查看计数赛成绩公示表:{}",params); + List countScoreCurrentSites = competeService.queryCountScoreAll(params.getParam()); + log.info("查看计数赛成绩公示表:{}",params); + return JsonResponse.newInstance().ok(countScoreCurrentSites); + } + @MustLogin @ApiOperation(value = "技术赛提交分数", notes = "接受前端得请求参数,插入相关得表中") @RequestMapping(value = "/submitScore", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) diff --git a/mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java b/mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java index 952debdd..ac30c925 100644 --- a/mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java +++ b/mt/src/main/java/com/ccsens/mt/api/CompeteTaskController.java @@ -71,7 +71,7 @@ public class CompeteTaskController { @MustLogin @ApiOperation(value = "查看裁判分配信息", notes = "zy:查看每个项目下的每个场地的裁判信息") @RequestMapping(value = "/query/judgment", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) - public JsonResponse> queryJudgment(@ApiParam @Validated @RequestBody QueryDto params) { + public JsonResponse> queryJudgment(@ApiParam @Validated @RequestBody QueryDto params) { log.info("查看裁判分配信息:{}",params); List queryJudgmentList = competeTaskService.queryJudgment(params.getParam()); log.info("查看裁判分配信息:{}",queryJudgmentList); diff --git a/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java b/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java index ce78afce..f19fc4cd 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java +++ b/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java @@ -23,6 +23,15 @@ public class ProvinceCompeteDto { private Long companyId; } + @Data + @ApiModel("查看裁判分配表信息") + public static class QueryJudgment{ + @NotNull + @ApiModelProperty("大赛id") + private Long competeTimeId; + @ApiModelProperty("比赛项目id,不传则查询全部") + private Long projectId; + } @Data @ApiModel("一级项目id") 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 e1d9008b..e1425f72 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 @@ -64,7 +64,7 @@ public class VideoDto { private String videoPath; } @Data - @ApiModel("查看所有二级比赛项目") + @ApiModel("查看所有二级比赛项目()") public static class GetTwoProject{ @ApiModelProperty("大赛id") private Long teamId; diff --git a/mt/src/main/java/com/ccsens/mt/bean/vo/CompeteVo.java b/mt/src/main/java/com/ccsens/mt/bean/vo/CompeteVo.java index 23b9a1dd..89d542c3 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/vo/CompeteVo.java +++ b/mt/src/main/java/com/ccsens/mt/bean/vo/CompeteVo.java @@ -472,25 +472,25 @@ public class CompeteVo { @ApiModelProperty("参赛队员名") public String peopleName; @ApiModelProperty("裁判1") - public BigDecimal referee1; + public BigDecimal referee1 = new BigDecimal(0); @ApiModelProperty("裁判2") - public BigDecimal referee2; + public BigDecimal referee2 = new BigDecimal(0); @ApiModelProperty("裁判3") - public BigDecimal referee3; + public BigDecimal referee3 = new BigDecimal(0); @ApiModelProperty("1-3裁判得平均值") - public BigDecimal avg1To3; + public BigDecimal avg1To3 = new BigDecimal(0); @ApiModelProperty("裁判4") - public BigDecimal referee4; + public BigDecimal referee4 = new BigDecimal(0); @ApiModelProperty("裁判5") - public BigDecimal referee5; + public BigDecimal referee5 = new BigDecimal(0); @ApiModelProperty("裁判6") - public BigDecimal referee6; + public BigDecimal referee6 = new BigDecimal(0); @ApiModelProperty("4-6裁判得平均值") - public BigDecimal avg4To6; + public BigDecimal avg4To6 = new BigDecimal(0); @ApiModelProperty("主裁判") - public BigDecimal referee0; + public BigDecimal referee0 = new BigDecimal(0); @ApiModelProperty("最后得分") - public BigDecimal result; + public BigDecimal result = new BigDecimal(0); // @ApiModelProperty("排名") // public int order; } diff --git a/mt/src/main/java/com/ccsens/mt/bean/vo/ScoreVo.java b/mt/src/main/java/com/ccsens/mt/bean/vo/ScoreVo.java index 6372cc6a..c2ce6cbe 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/vo/ScoreVo.java +++ b/mt/src/main/java/com/ccsens/mt/bean/vo/ScoreVo.java @@ -216,13 +216,15 @@ public class ScoreVo { @ApiModelProperty("主裁2打分") private BigDecimal mainTwoScore; @ApiModelProperty("应得分") - private BigDecimal shouldScore; + private Integer shouldScore; @ApiModelProperty("扣除次数") - private BigDecimal deductTime; + private Integer deductTime; @ApiModelProperty("扣除原因") private String deductReason; @ApiModelProperty("最终成绩") private BigDecimal finalScore; + @ApiModelProperty("备注") + private String remark; } } diff --git a/mt/src/main/java/com/ccsens/mt/bean/vo/VideoProjectVo.java b/mt/src/main/java/com/ccsens/mt/bean/vo/VideoProjectVo.java index 0dd30cbb..644838c1 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/vo/VideoProjectVo.java +++ b/mt/src/main/java/com/ccsens/mt/bean/vo/VideoProjectVo.java @@ -10,12 +10,14 @@ import lombok.Setter; public class VideoProjectVo { @Data - @ApiModel("查看所有二级比赛项目") + @ApiModel("返回所有二级比赛项目(包括项目类型)") public static class GetTwoProject{ @ApiModelProperty("项目id") private Long projectId; @ApiModelProperty("项目名") private String projectName; + @ApiModelProperty("项目类型") + private int projectType; } @Data @ApiModel("查找所有参赛单位") diff --git a/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteJudgmentDao.java b/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteJudgmentDao.java index 4361db75..bae23bd2 100644 --- a/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteJudgmentDao.java +++ b/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteJudgmentDao.java @@ -14,5 +14,5 @@ public interface CompeteJudgmentDao extends CompeteJudgmentMapper { * @param competeTimeId 大赛id * @return */ - List queryJudgment(@Param("competeTimeId") Long competeTimeId); + List queryJudgment(@Param("competeTimeId") Long competeTimeId,@Param("projectId") Long projectId); } diff --git a/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteScoreDao.java b/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteScoreDao.java index 828dae59..aa06f8a0 100644 --- a/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteScoreDao.java +++ b/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteScoreDao.java @@ -24,4 +24,16 @@ public interface CompeteScoreDao { List selectCountScoreCurrentSite (@Param("siteId") long siteId); + /** + * 查找计数赛成绩公示(个人比赛) + * @param projectId + * @return + */ + List queryCountScoreAll(@Param("projectId")Long projectId); + /** + * 查找计数赛成绩公示(团队比赛) + * @param projectId + * @return + */ + List queryCountScoreAllByTeam(Long projectId); } diff --git a/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteTimeDao.java b/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteTimeDao.java index 5f820582..5532d2b3 100644 --- a/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteTimeDao.java +++ b/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteTimeDao.java @@ -1,6 +1,7 @@ package com.ccsens.mt.persist.dao; import com.ccsens.mt.bean.vo.CompeteVo; +import com.ccsens.mt.bean.vo.VideoProjectVo; import com.ccsens.mt.persist.mapper.CompeteTimeMapper; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; @@ -56,4 +57,10 @@ public interface CompeteTimeDao extends CompeteTimeMapper { */ List queryGroupByProject(@Param("type") int type, @Param("projectId") Long projectId); + /** + * 查看所有二级比赛项目(不包括通级赛) + * @param teamId + * @return + */ + List selectTwoProject(@Param("teamId")Long teamId); } diff --git a/mt/src/main/java/com/ccsens/mt/service/CompeteService.java b/mt/src/main/java/com/ccsens/mt/service/CompeteService.java index 026b5502..f459c556 100644 --- a/mt/src/main/java/com/ccsens/mt/service/CompeteService.java +++ b/mt/src/main/java/com/ccsens/mt/service/CompeteService.java @@ -15,7 +15,6 @@ import com.ccsens.mt.bean.dto.ScoreDto; import com.ccsens.mt.bean.po.*; import com.ccsens.mt.bean.vo.CompeteVo; import com.ccsens.mt.bean.vo.ScoreVo; -import com.ccsens.mt.bean.vo.TableVo; import com.ccsens.mt.persist.dao.*; import com.ccsens.mt.persist.mapper.*; import com.ccsens.mt.util.Constant; @@ -23,8 +22,6 @@ import com.ccsens.util.*; import com.ccsens.util.bean.dto.QueryDto; import com.ccsens.util.exception.BaseException; import lombok.extern.slf4j.Slf4j; -import org.apache.poi.ss.usermodel.Cell; -import org.apache.poi.ss.usermodel.CellType; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.xssf.usermodel.XSSFRow; import org.apache.poi.xssf.usermodel.XSSFSheet; @@ -39,7 +36,6 @@ import javax.annotation.Resource; import java.io.*; import java.math.BigDecimal; -import java.util.*; import java.util.ArrayList; import java.util.HashMap; @@ -106,14 +102,19 @@ public class CompeteService implements ICompeteService { List competeStartOrdersList = competeStartOrderMapper.selectByExample(competeStartOrderExample); competeStartOrdersList.forEach(competeStartOrder -> { //一个人或者一个团队得数据 - CompeteVo.TotalScoreDisplay totalScoreDisplay=new CompeteVo.TotalScoreDisplay(); + CompeteVo.TotalScoreDisplay totalScoreDisplay = new CompeteVo.TotalScoreDisplay(); //项目名 - totalScoreDisplay.setCompanyName(competeProjectMapper.selectByPrimaryKey(competeStartOrder.getProjectId()).getName()); - + CompeteProject project = competeProjectMapper.selectByPrimaryKey(competeStartOrder.getProjectId()); + if(ObjectUtil.isNotNull(project)) { + totalScoreDisplay.setCompanyName(project.getName()); + } //名字 if(competeStartOrder.getTeam().equals((byte) 0)){ //个人 - totalScoreDisplay.setPeopleName( competePlayerDao.selectByPrimaryKey(competeStartOrder.getPlayerId()).getName()); + CompetePlayer player = competePlayerDao.selectByPrimaryKey(competeStartOrder.getPlayerId()); + if(ObjectUtil.isNotNull(player)) { + totalScoreDisplay.setPeopleName(player.getName()); + } }else { //团体 CompeteTeamMemberExample competeTeamMemberExample =new CompeteTeamMemberExample(); @@ -1250,4 +1251,17 @@ public class CompeteService implements ICompeteService { competeCountScoreMapper.insert(competeCountScore); } + @Override + public List queryCountScoreAll(ScoreDto.ShowResult param) { + List countScoreCurrentSiteList = new ArrayList<>(); + CompeteProject competeProject = competeProjectMapper.selectByPrimaryKey(param.getProjectId()); + if(ObjectUtil.isNotNull(competeProject)) { + if(competeProject.getTeam() == 0) { + countScoreCurrentSiteList = competeScoreDao.queryCountScoreAll(param.getProjectId()); + }else { + countScoreCurrentSiteList = competeScoreDao.queryCountScoreAllByTeam(param.getProjectId()); + } + } + return countScoreCurrentSiteList; + } } \ No newline at end of file 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 09622578..e0d9abb8 100644 --- a/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java +++ b/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java @@ -307,8 +307,8 @@ public class CompeteTaskService implements ICompeteTaskService{ * 查看裁判分配信息 */ @Override - public List queryJudgment(CompeteDto.CompeteTime param) { - List queryJudgmentList = competeJudgmentDao.queryJudgment(param.getCompeteTimeId()); + public List queryJudgment(ProvinceCompeteDto.QueryJudgment param) { + List queryJudgmentList = competeJudgmentDao.queryJudgment(param.getCompeteTimeId(),param.getProjectId()); if(CollectionUtil.isNotEmpty(queryJudgmentList)){ queryJudgmentList.forEach(projectJudgment -> { //裁判数量 @@ -359,7 +359,7 @@ public class CompeteTaskService implements ICompeteTaskService{ } } } - return competeJudgmentDao.queryJudgment(param.getCompeteTimeId()); + return competeJudgmentDao.queryJudgment(param.getCompeteTimeId(),null); } /** @@ -369,79 +369,126 @@ public class CompeteTaskService implements ICompeteTaskService{ , ProvinceCompeteDto.SiteJudgment siteJudgment, ProvinceCompeteDto.JudgmentInfo judgmentInfo,String token) { // 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 = "主裁判"; + //查找该项目下的该场地的裁判信息 + CompeteJudgment competeJudgment; + CompeteJudgmentExample competeJudgmentExample = new CompeteJudgmentExample(); + competeJudgmentExample.createCriteria().andProjectIdEqualTo(project.getId()).andCompeteTimeIdEqualTo(competeTimeId) + .andSiteEqualTo(siteJudgment.getSite()).andChiefJudgmentEqualTo((byte) judgmentInfo.getJudgmentNum()); + List competeJudgmentList = competeJudgmentDao.selectByExample(competeJudgmentExample); + if(CollectionUtil.isNotEmpty(competeJudgmentList)){ + competeJudgment = competeJudgmentList.get(0); + 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.updateByPrimaryKeySelective(competeJudgment); + //修改角色 + //修改成员 + //修改任务 }else { - jdgmentNum = "裁判"+judgmentInfo.getJudgmentNum(); - } - saveRole.setRoleName(project.getName()+"-场地"+siteJudgment.getSite()+"-"+jdgmentNum); - Long roleId = null; - saveRole.setToken(token); - log.info("在tall内添加角色:{}",saveRole); - JsonResponse roleJsonResponse = tallFeignClient.saveRole(saveRole); - log.info("添加角色后返回:{}",roleJsonResponse); - if (ObjectUtil.isNotNull(roleJsonResponse)) { - MemberVo.RoleInfo roleInfo = roleJsonResponse.getData(); - if (ObjectUtil.isNotNull(roleInfo)) { - roleId = roleInfo.getRoleId(); + 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(); } - } - //添加成员 - MemberRoleDto.SaveMember saveMember = new MemberRoleDto.SaveMember(); - saveMember.setMemberName(judgmentInfo.getJudgmentName()); - saveMember.setProjectId(tallProjectId); - saveMember.setPhone(judgmentInfo.getJudgmentPhone()); - saveMember.setRoleId(Arrays.asList(roleId)); - saveMember.setToken(token); - log.info("在tall内添加成员:{}",saveMember); - JsonResponse memberJsonResponse = tallFeignClient.saveMember(saveMember); - log.info("添加成员后返回:{}",memberJsonResponse); - //如果成员已存在, - //添加任务 - //查找场次信息表 - 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()); - addTask.setToken(token); - log.info("在tall内添加任务:{}",addTask); - JsonResponse normalTaskJsonResponse = tallFeignClient.saveTask(addTask); - log.info("添加任务后返回:{}",normalTaskJsonResponse); - if (ObjectUtil.isNotNull(normalTaskJsonResponse)) { - TaskVo.NormalTask normalTask = normalTaskJsonResponse.getData(); - if (ObjectUtil.isNotNull(normalTask)) { - //修改任务插件配置信息 - TallTaskDto.UpdatePluginConfig updatePluginConfig = new TallTaskDto.UpdatePluginConfig(); - updatePluginConfig.setWebPath("/home/osct/video-score"); - updatePluginConfig.setTaskId(normalTask.getDetailId()); - updatePluginConfig.setToken(token); - log.info("修改tall内任务插件配置:{}",updatePluginConfig); - JsonResponse pluginVoJsonResponse = tallFeignClient.updatePluginConfig(updatePluginConfig); - log.info("修改任务插件配置后返回:{}",pluginVoJsonResponse); + saveRole.setRoleName(project.getName() + "-场地" + siteJudgment.getSite() + "-" + jdgmentNum); + Long roleId = null; + saveRole.setToken(token); + log.info("在tall内添加角色:{}", saveRole); + JsonResponse roleJsonResponse = tallFeignClient.saveRole(saveRole); + log.info("添加角色后返回:{}", roleJsonResponse); + if (ObjectUtil.isNotNull(roleJsonResponse)) { + MemberVo.RoleInfo roleInfo = roleJsonResponse.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)); + saveMember.setToken(token); + log.info("在tall内添加成员:{}", saveMember); + JsonResponse memberJsonResponse = tallFeignClient.saveMember(saveMember); + log.info("添加成员后返回:{}", memberJsonResponse); + //如果成员已存在,查询成员信息然后添加至角色内 + Long memberId = null; + if (ObjectUtil.isNotNull(memberJsonResponse)) { + //code等于21代表成员已存在 + if(memberJsonResponse.getCode() == 21){ + //查询该手机号在项目内的成员的id + MemberRoleDto.GetMemberByPhone getMemberByPhone = new MemberRoleDto.GetMemberByPhone(); + getMemberByPhone.setProjectId(tallProjectId); + getMemberByPhone.setPhone(judgmentInfo.getJudgmentPhone()); + getMemberByPhone.setToken(token); + JsonResponse memberListJsonResponse = tallFeignClient.queryMemberByPhone(getMemberByPhone); + if (ObjectUtil.isNotNull(memberListJsonResponse)) { + MemberVo.MemberList memberList = memberListJsonResponse.getData(); + if (ObjectUtil.isNotNull(memberList)) { + memberId = memberList.getMemberId(); + } + } + //将该成员添加至角色下 + if(ObjectUtil.isNotNull(roleId) && ObjectUtil.isNotNull(memberId)){ + MemberRoleDto.SaveMemberInRole saveMemberInRole = new MemberRoleDto.SaveMemberInRole(); + saveMemberInRole.setRoleId(roleId); + saveMemberInRole.setMemberId(memberId); + saveMemberInRole.setToken(token); + tallFeignClient.saveMemberInRole(saveMemberInRole); + } + } + } + //添加任务 + //查找场次信息表 + 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()); + addTask.setToken(token); + log.info("在tall内添加任务:{}", addTask); + JsonResponse normalTaskJsonResponse = tallFeignClient.saveTask(addTask); + log.info("添加任务后返回:{}", normalTaskJsonResponse); + if (ObjectUtil.isNotNull(normalTaskJsonResponse)) { + TaskVo.NormalTask normalTask = normalTaskJsonResponse.getData(); + if (ObjectUtil.isNotNull(normalTask)) { + //修改任务插件配置信息 + TallTaskDto.UpdatePluginConfig updatePluginConfig = new TallTaskDto.UpdatePluginConfig(); + updatePluginConfig.setWebPath("/home/osct/video-score"); + updatePluginConfig.setTaskId(normalTask.getDetailId()); + updatePluginConfig.setToken(token); + log.info("修改tall内任务插件配置:{}", updatePluginConfig); + JsonResponse pluginVoJsonResponse = tallFeignClient.updatePluginConfig(updatePluginConfig); + log.info("修改任务插件配置后返回:{}", pluginVoJsonResponse); + } } } } @@ -456,6 +503,9 @@ public class CompeteTaskService implements ICompeteTaskService{ //查询比赛项目信息 ProvinceCompeteVo.QueryProjectByTall queryProjectByTall = projectConfigDao.queryProjectByTaskDetailId(param.getTaskDetailId()); log.info("根据taskDetailId查询到的场次和项目信息:{}",queryProjectByTall); + if(ObjectUtil.isNull(queryProjectByTall)){ + queryProjectByTall = new ProvinceCompeteVo.QueryProjectByTall(); + } //查询裁判信息 CompeteJudgment judgment = new CompeteJudgment(); CompeteJudgmentExample judgmentExample = new CompeteJudgmentExample(); @@ -463,10 +513,11 @@ public class CompeteTaskService implements ICompeteTaskService{ List judgmentList = competeJudgmentDao.selectByExample(judgmentExample); if(CollectionUtil.isNotEmpty(judgmentList)){ judgment = judgmentList.get(0); + log.info("根据roleId查询到的裁判信息:{}",judgment); + queryProjectByTall.setJudgmentId(judgment.getId()); + queryProjectByTall.setJudgmentNum(judgment.getChiefJudgment()); } - log.info("根据roleId查询到的裁判信息:{}",judgment); - queryProjectByTall.setJudgmentId(judgment.getId()); - queryProjectByTall.setJudgmentNum(judgment.getChiefJudgment()); + return queryProjectByTall; } } diff --git a/mt/src/main/java/com/ccsens/mt/service/CompeteVedioService.java b/mt/src/main/java/com/ccsens/mt/service/CompeteVedioService.java index 55e9c715..78dbb874 100644 --- a/mt/src/main/java/com/ccsens/mt/service/CompeteVedioService.java +++ b/mt/src/main/java/com/ccsens/mt/service/CompeteVedioService.java @@ -81,18 +81,19 @@ public class CompeteVedioService implements ICompeteVedioService{ @Override public List selectTwoProject(QueryDto params) { - CompeteTime competeTime = competeTimeDao.selectByPrimaryKey(params.getParam().getTeamId()); - CompeteProjectExample competeCompanyExample=new CompeteProjectExample(); - competeCompanyExample.createCriteria().andTypeEqualTo(competeTime.getType()).andLevelEqualTo((byte) 2); - List list=competeProjectMapper.selectByExample(competeCompanyExample); - List list1=new ArrayList<>(); - list.forEach(mes->{ - VideoProjectVo.GetTwoProject getTwoProject=new VideoProjectVo.GetTwoProject(); - getTwoProject.setProjectId(mes.getId()); - getTwoProject.setProjectName(mes.getName()); - list1.add(getTwoProject); - }); - return list1; + List getTwoProjects = competeTimeDao.selectTwoProject(params.getParam().getTeamId()); +// CompeteTime competeTime = competeTimeDao.selectByPrimaryKey(params.getParam().getTeamId()); +// CompeteProjectExample competeCompanyExample=new CompeteProjectExample(); +// competeCompanyExample.createCriteria().andTypeEqualTo(competeTime.getType()).andLevelEqualTo((byte) 2); +// List list=competeProjectMapper.selectByExample(competeCompanyExample); +// List list1=new ArrayList<>(); +// list.forEach(mes->{ +// VideoProjectVo.GetTwoProject getTwoProject=new VideoProjectVo.GetTwoProject(); +// getTwoProject.setProjectId(mes.getId()); +// getTwoProject.setProjectName(mes.getName()); +// list1.add(getTwoProject); +// }); + return getTwoProjects; } @Override diff --git a/mt/src/main/java/com/ccsens/mt/service/ICompeteService.java b/mt/src/main/java/com/ccsens/mt/service/ICompeteService.java index bdc7be69..a10a63aa 100644 --- a/mt/src/main/java/com/ccsens/mt/service/ICompeteService.java +++ b/mt/src/main/java/com/ccsens/mt/service/ICompeteService.java @@ -187,6 +187,12 @@ public interface ICompeteService { void submitScore(CompeteDto.SubmitScore params) ; + /** + * 查看技术赛成绩公示表 + * @param param + * @return + */ + List queryCountScoreAll(ScoreDto.ShowResult param); } diff --git a/mt/src/main/java/com/ccsens/mt/service/ICompeteTaskService.java b/mt/src/main/java/com/ccsens/mt/service/ICompeteTaskService.java index e818f955..abc75755 100644 --- a/mt/src/main/java/com/ccsens/mt/service/ICompeteTaskService.java +++ b/mt/src/main/java/com/ccsens/mt/service/ICompeteTaskService.java @@ -37,7 +37,7 @@ public interface ICompeteTaskService { * @param param * @return */ - List queryJudgment(CompeteDto.CompeteTime param); + List queryJudgment(ProvinceCompeteDto.QueryJudgment param); /** * 为项目分配裁判 diff --git a/mt/src/main/java/com/ccsens/mt/service/ProvinceService.java b/mt/src/main/java/com/ccsens/mt/service/ProvinceService.java index e29afc35..85049a30 100644 --- a/mt/src/main/java/com/ccsens/mt/service/ProvinceService.java +++ b/mt/src/main/java/com/ccsens/mt/service/ProvinceService.java @@ -9,6 +9,7 @@ import cn.hutool.core.util.StrUtil; import com.ccsens.mt.bean.dto.CompeteDto; import com.ccsens.mt.bean.dto.ProvinceCompeteDto; import com.ccsens.mt.bean.po.*; +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.CompetePlayerDao; @@ -512,6 +513,14 @@ public class ProvinceService implements IProvinceService { */ @Override public void playerJoinProject(ProvinceCompeteDto.JoinProject param) { + //判断是否在报名时间内 + CompeteTime competeTime = competeTimeDao.selectByPrimaryKey(param.getCompeteTimeId()); + log.info("检查报名时间是否符合:{}",competeTime); + if(ObjectUtil.isNotNull(competeTime)) { + if (competeTime.getSignUpEndTime() < System.currentTimeMillis()) { + throw new BaseException(CodeEnum.SIGN_UP_TIME_FINISHED); + } + } //查找项目信息 CompeteProject competeProject = competeProjectMapper.selectByPrimaryKey(param.getProjectId()); if(ObjectUtil.isNull(competeProject)){ throw new BaseException(CodeEnum.PARAM_ERROR); } diff --git a/mt/src/main/resources/mapper_dao/CompeteJudgmentDao.xml b/mt/src/main/resources/mapper_dao/CompeteJudgmentDao.xml index 548c3235..5424e8a1 100644 --- a/mt/src/main/resources/mapper_dao/CompeteJudgmentDao.xml +++ b/mt/src/main/resources/mapper_dao/CompeteJudgmentDao.xml @@ -37,6 +37,9 @@ LEFT JOIN t_compete_judgment j on j.project_id = p.id WHERE ct.id = #{competeTimeId} + + and p.id = #{projectId} + and p.`level` = 2 and p.certificate = 0 and p.rec_status = 0 diff --git a/mt/src/main/resources/mapper_dao/CompeteScoreDao.xml b/mt/src/main/resources/mapper_dao/CompeteScoreDao.xml index 43ea9e8f..d920ffd4 100644 --- a/mt/src/main/resources/mapper_dao/CompeteScoreDao.xml +++ b/mt/src/main/resources/mapper_dao/CompeteScoreDao.xml @@ -104,6 +104,56 @@ and tccs.rec_status =0 and tcso.id =#{siteId} + + \ No newline at end of file diff --git a/mt/src/main/resources/mapper_dao/CompeteTimeDao.xml b/mt/src/main/resources/mapper_dao/CompeteTimeDao.xml index 9f3d834e..0d59e547 100644 --- a/mt/src/main/resources/mapper_dao/CompeteTimeDao.xml +++ b/mt/src/main/resources/mapper_dao/CompeteTimeDao.xml @@ -130,4 +130,17 @@ GROUP BY tcvs.`judgment_id` + \ No newline at end of file diff --git a/tall/src/main/java/com/ccsens/tall/bean/dto/MemberDto.java b/tall/src/main/java/com/ccsens/tall/bean/dto/MemberDto.java index 7e2e5e27..a5c7c4de 100644 --- a/tall/src/main/java/com/ccsens/tall/bean/dto/MemberDto.java +++ b/tall/src/main/java/com/ccsens/tall/bean/dto/MemberDto.java @@ -40,6 +40,15 @@ public class MemberDto { private Long memberId; } + @Data + @ApiModel + public static class GetMemberByPhone{ + @ApiModelProperty("项目id") + private Long projectId; + @ApiModelProperty("手机号") + private String phone; + } + @Data @ApiModel("修改成员信息") public static class UpdateMemberInfo{ diff --git a/tall/src/main/java/com/ccsens/tall/bean/vo/TaskVo.java b/tall/src/main/java/com/ccsens/tall/bean/vo/TaskVo.java index 4a009742..10cb5edb 100644 --- a/tall/src/main/java/com/ccsens/tall/bean/vo/TaskVo.java +++ b/tall/src/main/java/com/ccsens/tall/bean/vo/TaskVo.java @@ -164,7 +164,6 @@ public class TaskVo { public Long getServerTime(){ return System.currentTimeMillis(); } - } @ApiModel diff --git a/tall/src/main/java/com/ccsens/tall/service/IProMemberService.java b/tall/src/main/java/com/ccsens/tall/service/IProMemberService.java index 62f5ff00..22917a3c 100644 --- a/tall/src/main/java/com/ccsens/tall/service/IProMemberService.java +++ b/tall/src/main/java/com/ccsens/tall/service/IProMemberService.java @@ -77,4 +77,11 @@ public interface IProMemberService { * @return 返回所有成员信息 */ List queryMembersByProjectId(Long projectId); + + /** + * 通过手机号查找项目内的 + * @param memberByPhone + * @return + */ + ProjectVo.MemberList getMemberByPhone(MemberDto.GetMemberByPhone memberByPhone); } diff --git a/tall/src/main/java/com/ccsens/tall/service/ProMemberService.java b/tall/src/main/java/com/ccsens/tall/service/ProMemberService.java index e0515b4a..d3060c65 100644 --- a/tall/src/main/java/com/ccsens/tall/service/ProMemberService.java +++ b/tall/src/main/java/com/ccsens/tall/service/ProMemberService.java @@ -15,6 +15,7 @@ import com.ccsens.tall.bean.vo.RoleVo; import com.ccsens.tall.persist.dao.*; import com.ccsens.tall.persist.mapper.SysImitationMapper; import com.ccsens.util.CodeEnum; +import com.ccsens.util.PropUtil; import com.ccsens.util.WebConstant; import com.ccsens.util.exception.BaseException; import lombok.extern.slf4j.Slf4j; @@ -445,4 +446,18 @@ public class ProMemberService implements IProMemberService { public List queryMembersByProjectId(Long projectId) { return proMemberDao.queryMembersByProjectId(projectId); } + + @Override + public ProjectVo.MemberList getMemberByPhone(MemberDto.GetMemberByPhone memberByPhone) { + ProjectVo.MemberList member = null; + ProMemberExample proMemberExample = new ProMemberExample(); + proMemberExample.createCriteria().andProjectIdEqualTo(memberByPhone.getProjectId()).andPhoneEqualTo(memberByPhone.getPhone()); + List memberList = proMemberDao.selectByExample(proMemberExample); + if(CollectionUtil.isNotEmpty(memberList)){ + member = new ProjectVo.MemberList(); + member.setMemberId(memberList.get(0).getId()); + member.setMemberName(memberList.get(0).getNickname()); + } + return member; + } } diff --git a/tall/src/main/java/com/ccsens/tall/web/MemberController.java b/tall/src/main/java/com/ccsens/tall/web/MemberController.java index 482f43b7..2f6fd750 100644 --- a/tall/src/main/java/com/ccsens/tall/web/MemberController.java +++ b/tall/src/main/java/com/ccsens/tall/web/MemberController.java @@ -91,5 +91,14 @@ public class MemberController { return JsonResponse.newInstance().ok(membersInfo); } - + @ApiOperation(value = "根据手机号和项目id查询成员信息",notes = "") + @ApiImplicitParams({ + }) + @RequestMapping(value = "/query/memberByPhone", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse queryMemberByPhone(HttpServletRequest request, + @ApiParam @Validated @RequestBody MemberDto.GetMemberByPhone memberByPhone) { + Long currentUserId = Long.valueOf(((Claims) request.getAttribute(WebConstant.REQUEST_KEY_CLAIMS)).getSubject()); + ProjectVo.MemberList membersInfo = proMemberService.getMemberByPhone(memberByPhone); + return JsonResponse.newInstance().ok(membersInfo); + } }