From bdb8886b77134408e441412d91e1a65b96ba29b2 Mon Sep 17 00:00:00 2001 From: zy_Java <654600784@qq.com> Date: Sat, 21 Nov 2020 16:15:38 +0800 Subject: [PATCH] 20201121v1.7 --- .../mt/persist/dao/CompeteProjectDao.java | 6 + .../ccsens/mt/service/CompeteTaskService.java | 336 +++++++++--------- .../com/ccsens/mt/service/ExcelService.java | 2 +- mt/src/main/resources/application.yml | 4 +- .../mapper_dao/CompeteProjectDao.xml | 3 + 5 files changed, 182 insertions(+), 169 deletions(-) diff --git a/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteProjectDao.java b/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteProjectDao.java index de817184..5b7f47b2 100644 --- a/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteProjectDao.java +++ b/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteProjectDao.java @@ -19,4 +19,10 @@ public interface CompeteProjectDao extends CompeteProjectMapper { List getPlayerForSingle (@Param("level") Byte level, @Param("type") Byte type); List getPlayerForTeam (@Param("level") Byte level, @Param("type") Byte type); + /** + * 查找项目下的参赛人数或队伍 + * @param projectId + * @return + */ + List queryJoinNum(@Param("projectId")Long projectId); } \ 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 b5d4a6d5..e37fe6dc 100644 --- a/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java +++ b/mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java @@ -80,7 +80,9 @@ public class CompeteTaskService implements ICompeteTaskService{ } param.getUpdateCompeteTaskList().forEach(projectConfig -> { //判断时间和时长是否正确 - if(projectConfig.getStartTime() == 0 || projectConfig.getEndTime() == 0 || projectConfig.getDuration() == 0){ + if(ObjectUtil.isNotNull(projectConfig.getStartTime()) || projectConfig.getStartTime() == 0 + || ObjectUtil.isNotNull(projectConfig.getEndTime()) || projectConfig.getEndTime() == 0 || + ObjectUtil.isNotNull(projectConfig.getDuration()) || projectConfig.getDuration() == 0){ return; } //获取项目 @@ -126,13 +128,15 @@ public class CompeteTaskService implements ICompeteTaskService{ //查找项目 CompeteProject project = competeProjectDao.selectByPrimaryKey(projectConfig.getProjectId()); if (ObjectUtil.isNotNull(project)) { + //查询项目下的参赛人数或队伍 +// List projectPlayerIdList = competeProjectDao.queryJoinNum(project.getId()); //判断是团队还是个人项目 if (project.getTeam() == 0) { //个人项目查找所有参赛信息 CompeteProjectPlayerExample projectPlayerExample = new CompeteProjectPlayerExample(); projectPlayerExample.createCriteria().andProjectIdEqualTo(project.getId()); List projectPlayerList = projectPlayerMapper.selectByExample(projectPlayerExample); -// List projectPlayerIdList = competeProjectDao.queryJoinNum(project.getId()); + if (CollectionUtil.isNotEmpty(projectPlayerList)) { //计算场次 int order = (int) Math.ceil(projectPlayerList.size() / projectConfig.getSiteNum()); @@ -159,43 +163,43 @@ public class CompeteTaskService implements ICompeteTaskService{ if(orderTime > 0 && (competeStartOrder.getStartTime() == projectStartTime || competeStartOrder.getEndTime() == projectStartTime + orderTime)){ competeStartOrder.setStartTime(projectStartTime); competeStartOrder.setEndTime(projectStartTime + orderTime); -// // 修改tall的任务 -// TallTaskDto.UpdateTaskInfo updateTaskInfo = new TallTaskDto.UpdateTaskInfo(); -// updateTaskInfo.setId(competeStartOrder.getId()); -// updateTaskInfo.setBeginTime(competeStartOrder.getStartTime()); -// updateTaskInfo.setEndTime(competeStartOrder.getEndTime()); -// updateTaskInfo.setToken(token); -// log.info("修改tall的任务信息:{}",updateTaskInfo); -// JsonResponse normalTaskJsonResponse = tallFeignClient.updataTask(updateTaskInfo); -// log.info("修改tall的任务信息后返回:{}",normalTaskJsonResponse); -// //失败return -// if (ObjectUtil.isNull(normalTaskJsonResponse) || normalTaskJsonResponse.getCode() != 200){ -// return; -// } + // 修改tall的任务 + TallTaskDto.UpdateTaskInfo updateTaskInfo = new TallTaskDto.UpdateTaskInfo(); + updateTaskInfo.setId(competeStartOrder.getId()); + updateTaskInfo.setBeginTime(competeStartOrder.getStartTime()); + updateTaskInfo.setEndTime(competeStartOrder.getEndTime()); + updateTaskInfo.setToken(token); + log.info("修改tall的任务信息:{}",updateTaskInfo); + JsonResponse normalTaskJsonResponse = tallFeignClient.updataTask(updateTaskInfo); + log.info("修改tall的任务信息后返回:{}",normalTaskJsonResponse); + //失败return + if (ObjectUtil.isNull(normalTaskJsonResponse) || normalTaskJsonResponse.getCode() != 200){ + return; + } } startOrderMapper.updateByPrimaryKeySelective(competeStartOrder); }else{ -// //添加tall的任务 -// Long taskId = null; -// TallTaskDto.AddTask addTask = new TallTaskDto.AddTask(); -// addTask.setProjectId(tallProjectId); -// addTask.setTaskName(project.getName() + competeOrder +"-" + site); -// addTask.setBeginTime(projectStartTime); -// addTask.setEndTime(projectStartTime + orderTime); -// addTask.setExecutorId(tallRoleId); -// addTask.setToken(token); -// log.info("在tall内添加任务:{}",addTask); -// JsonResponse normalTaskJsonResponse = tallFeignClient.saveTask(addTask); -// //异常return -// log.info("添加任务后返回:{}",normalTaskJsonResponse); -// if (ObjectUtil.isNull(normalTaskJsonResponse) || normalTaskJsonResponse.getCode() != 200) { -// return; -// } -// TaskVo.NormalTask normalTask = normalTaskJsonResponse.getData(); -// if (ObjectUtil.isNotNull(normalTask)) { -// taskId = normalTask.getDetailId(); -// } + //添加tall的任务 + Long taskId = null; + TallTaskDto.AddTask addTask = new TallTaskDto.AddTask(); + addTask.setProjectId(tallProjectId); + addTask.setTaskName(project.getName() + competeOrder +"-" + site); + addTask.setBeginTime(projectStartTime); + addTask.setEndTime(projectStartTime + orderTime); + addTask.setExecutorId(tallRoleId); + addTask.setToken(token); + log.info("在tall内添加任务:{}",addTask); + JsonResponse normalTaskJsonResponse = tallFeignClient.saveTask(addTask); + //异常return + log.info("添加任务后返回:{}",normalTaskJsonResponse); + if (ObjectUtil.isNull(normalTaskJsonResponse) || normalTaskJsonResponse.getCode() != 200) { + return; + } + TaskVo.NormalTask normalTask = normalTaskJsonResponse.getData(); + if (ObjectUtil.isNotNull(normalTask)) { + taskId = normalTask.getDetailId(); + } //添加出场顺序信息 CompeteStartOrder competeStartOrder = new CompeteStartOrder(); competeStartOrder.setId(snowflake.nextId()); @@ -204,7 +208,7 @@ public class CompeteTaskService implements ICompeteTaskService{ competeStartOrder.setSite((byte) site); competeStartOrder.setTeam((byte) 0); competeStartOrder.setCompeteOrder((byte) competeOrder); -// competeStartOrder.setTaskId(taskId); + competeStartOrder.setTaskId(taskId); competeStartOrder.setStartTime(projectStartTime); competeStartOrder.setEndTime(projectStartTime + orderTime); startOrderMapper.insertSelective(competeStartOrder); @@ -246,44 +250,44 @@ public class CompeteTaskService implements ICompeteTaskService{ if(orderTime > 0 && (competeStartOrder.getStartTime() == projectStartTime || competeStartOrder.getEndTime() == projectStartTime + orderTime)){ competeStartOrder.setStartTime(projectStartTime); competeStartOrder.setEndTime(projectStartTime + orderTime); -// //修改tall的任务 -// TallTaskDto.UpdateTaskInfo updateTaskInfo = new TallTaskDto.UpdateTaskInfo(); -// updateTaskInfo.setId(competeStartOrder.getId()); -// updateTaskInfo.setBeginTime(competeStartOrder.getId()); -// updateTaskInfo.setBeginTime(competeStartOrder.getEndTime()); -// updateTaskInfo.setToken(token); -// log.info("修改tall的任务信息:{}",updateTaskInfo); -// JsonResponse normalTaskJsonResponse = tallFeignClient.updataTask(updateTaskInfo); -// log.info("修改tall的任务信息后返回:{}",normalTaskJsonResponse); -// //失败return -// if (ObjectUtil.isNull(normalTaskJsonResponse) || normalTaskJsonResponse.getCode() != 200){ -// return; -// } + //修改tall的任务 + TallTaskDto.UpdateTaskInfo updateTaskInfo = new TallTaskDto.UpdateTaskInfo(); + updateTaskInfo.setId(competeStartOrder.getId()); + updateTaskInfo.setBeginTime(competeStartOrder.getId()); + updateTaskInfo.setBeginTime(competeStartOrder.getEndTime()); + updateTaskInfo.setToken(token); + log.info("修改tall的任务信息:{}",updateTaskInfo); + JsonResponse normalTaskJsonResponse = tallFeignClient.updataTask(updateTaskInfo); + log.info("修改tall的任务信息后返回:{}",normalTaskJsonResponse); + //失败return + if (ObjectUtil.isNull(normalTaskJsonResponse) || normalTaskJsonResponse.getCode() != 200){ + return; + } } startOrderMapper.updateByPrimaryKeySelective(competeStartOrder); }else{ -// //添加tall的任务 -// Long taskId = null; -// TallTaskDto.AddTask addTask = new TallTaskDto.AddTask(); -// addTask.setProjectId(tallProjectId); -// addTask.setTaskName(project.getName() + competeOrder +"-" + site); -// addTask.setBeginTime(projectStartTime); -// addTask.setEndTime(projectStartTime + orderTime); -// addTask.setExecutorId(tallRoleId); -// addTask.setToken(token); -// log.info("在tall内添加任务:{}",addTask); -// JsonResponse normalTaskJsonResponse = tallFeignClient.saveTask(addTask); -// log.info("添加任务后返回:{}",normalTaskJsonResponse); -// //异常return -// log.info("添加任务后返回:{}",normalTaskJsonResponse); -// if (ObjectUtil.isNull(normalTaskJsonResponse) || normalTaskJsonResponse.getCode() != 200) { -// return; -// } -// TaskVo.NormalTask normalTask = normalTaskJsonResponse.getData(); -// if (ObjectUtil.isNotNull(normalTask)) { -// taskId = normalTask.getDetailId(); -// } + //添加tall的任务 + Long taskId = null; + TallTaskDto.AddTask addTask = new TallTaskDto.AddTask(); + addTask.setProjectId(tallProjectId); + addTask.setTaskName(project.getName() + competeOrder +"-" + site); + addTask.setBeginTime(projectStartTime); + addTask.setEndTime(projectStartTime + orderTime); + addTask.setExecutorId(tallRoleId); + addTask.setToken(token); + log.info("在tall内添加任务:{}",addTask); + JsonResponse normalTaskJsonResponse = tallFeignClient.saveTask(addTask); + log.info("添加任务后返回:{}",normalTaskJsonResponse); + //异常return + log.info("添加任务后返回:{}",normalTaskJsonResponse); + if (ObjectUtil.isNull(normalTaskJsonResponse) || normalTaskJsonResponse.getCode() != 200) { + return; + } + TaskVo.NormalTask normalTask = normalTaskJsonResponse.getData(); + if (ObjectUtil.isNotNull(normalTask)) { + taskId = normalTask.getDetailId(); + } //添加出场顺序信息 CompeteStartOrder competeStartOrder = new CompeteStartOrder(); competeStartOrder.setId(snowflake.nextId()); @@ -292,7 +296,7 @@ public class CompeteTaskService implements ICompeteTaskService{ competeStartOrder.setSite((byte) site); competeStartOrder.setTeam((byte) 0); competeStartOrder.setCompeteOrder((byte) competeOrder); -// competeStartOrder.setTaskId(taskId); + competeStartOrder.setTaskId(taskId); competeStartOrder.setStartTime(projectStartTime); competeStartOrder.setEndTime(projectStartTime + orderTime); startOrderMapper.insertSelective(competeStartOrder); @@ -423,101 +427,101 @@ public class CompeteTaskService implements ICompeteTaskService{ 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; -// 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); -// } -// } -// } -// } + + + //添加角色 + 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; + 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); + } + } + } + } } } 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 ebc39bdf..ec367466 100644 --- a/mt/src/main/java/com/ccsens/mt/service/ExcelService.java +++ b/mt/src/main/java/com/ccsens/mt/service/ExcelService.java @@ -1278,7 +1278,7 @@ public class ExcelService implements IExcelService { String year = simpleDateFormat.format(date); Date date1 = new Date(schedulePlanDetail.getEndTime()); SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("HH:mm"); - String year1 = simpleDateFormat.format(date); + String year1 = simpleDateFormat1.format(date1); String string = schedulePlanDetail.getProjectName() + "(" + year +"-"+ year1 + ")"; stringBuilder.append(string+" "); } 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/CompeteProjectDao.xml b/mt/src/main/resources/mapper_dao/CompeteProjectDao.xml index b42730ed..89174fe3 100644 --- a/mt/src/main/resources/mapper_dao/CompeteProjectDao.xml +++ b/mt/src/main/resources/mapper_dao/CompeteProjectDao.xml @@ -61,4 +61,7 @@ and g.rec_status = 0 and c.rec_status = 0 + \ No newline at end of file