diff --git a/research-admin/src/main/java/com/research/web/controller/client/project/GroupController.java b/research-admin/src/main/java/com/research/web/controller/client/project/GroupController.java index 78500226..330ef44b 100644 --- a/research-admin/src/main/java/com/research/web/controller/client/project/GroupController.java +++ b/research-admin/src/main/java/com/research/web/controller/client/project/GroupController.java @@ -146,7 +146,7 @@ public class GroupController { } @PostMapping("/num") - public JsonResponse> queryNum(){ + public JsonResponse queryNum(){ return JsonResponse.ok(ktsGroupService.queryNum()); } @@ -160,6 +160,10 @@ public class GroupController { return JsonResponse.ok(ktsGroupService.kzzt()); } + @PostMapping("/detailAdd") + public JsonResponse detailAdd(@RequestBody @Validated GroupDto.DetailAdd dto) { + return JsonResponse.ok(ktsGroupService.detailAdd(dto)); + } private void aduit(Long memberId) throws Exception { diff --git a/research-system/src/main/java/com/research/system/domain/dto/GroupDto.java b/research-system/src/main/java/com/research/system/domain/dto/GroupDto.java index fc1c9236..a208433c 100644 --- a/research-system/src/main/java/com/research/system/domain/dto/GroupDto.java +++ b/research-system/src/main/java/com/research/system/domain/dto/GroupDto.java @@ -77,6 +77,10 @@ public class GroupDto { private String planStatus; @ApiModelProperty("开展状态") private Byte developStatus; + + private List contentList; + + private List outcomesList; } @Data @@ -170,4 +174,30 @@ public class GroupDto { private String promptExpectedResults; } + + @Data + public static class DetailAdd{ + private Long groupId; + private String mb; + private String fa; + private List nrList; + + private List yqcgList; + } + + @Data + public static class AddContent { + private Long id; + private Long groupId; + private String content; + private Byte status; + } + + @Data + public static class AddOutcomes { + private Long id; + private Long groupId; + private String outcomes; + private Byte status; + } } diff --git a/research-system/src/main/java/com/research/system/domain/vo/ClientPrjProjInfoVo.java b/research-system/src/main/java/com/research/system/domain/vo/ClientPrjProjInfoVo.java index 9c76ab88..5ab5ca09 100644 --- a/research-system/src/main/java/com/research/system/domain/vo/ClientPrjProjInfoVo.java +++ b/research-system/src/main/java/com/research/system/domain/vo/ClientPrjProjInfoVo.java @@ -2,6 +2,7 @@ package com.research.system.domain.vo; import com.research.system.domain.dto.ClientPrjProjInfoDto; import com.research.system.domain.po.PrjProjOrg; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.Date; @@ -127,6 +128,15 @@ public class ClientPrjProjInfoVo { private Integer xsjlNum; private String contactName; private String contactPhone; + + @ApiModelProperty("高层次科技人才") + private Integer gcckjrc; + @ApiModelProperty("人才培养") + private Integer rcpy; + @ApiModelProperty("高层次科技人才数量") + private Integer gcckjrcNum; + @ApiModelProperty("人才培养数量") + private Integer rcpyNum; } @Data diff --git a/research-system/src/main/java/com/research/system/domain/vo/GroupVO.java b/research-system/src/main/java/com/research/system/domain/vo/GroupVO.java index 8a069742..4aed487d 100644 --- a/research-system/src/main/java/com/research/system/domain/vo/GroupVO.java +++ b/research-system/src/main/java/com/research/system/domain/vo/GroupVO.java @@ -81,6 +81,11 @@ public class GroupVO { private Long cgIng; } + @Data + public static class GroupNumResult{ + private Integer total; + private List list; + } @Data public static class Num{ private Long orgId; diff --git a/research-system/src/main/java/com/research/system/service/KtsGroupService.java b/research-system/src/main/java/com/research/system/service/KtsGroupService.java index c7a9f492..b78b7de3 100644 --- a/research-system/src/main/java/com/research/system/service/KtsGroupService.java +++ b/research-system/src/main/java/com/research/system/service/KtsGroupService.java @@ -47,11 +47,12 @@ public interface KtsGroupService { GroupVO.ConfigResult configQuery(); - List queryNum(); + GroupVO.GroupNumResult queryNum(); List jhzt(); List kzzt(); + Integer detailAdd(GroupDto.DetailAdd dto); } diff --git a/research-system/src/main/java/com/research/system/service/impl/KtsGroupServiceImpl.java b/research-system/src/main/java/com/research/system/service/impl/KtsGroupServiceImpl.java index 53e374ff..2fe4172e 100644 --- a/research-system/src/main/java/com/research/system/service/impl/KtsGroupServiceImpl.java +++ b/research-system/src/main/java/com/research/system/service/impl/KtsGroupServiceImpl.java @@ -167,6 +167,7 @@ public class KtsGroupServiceImpl implements KtsGroupService { ktsKtGroup.setDelFlag((byte) 0); ktsKtGroup.setProjId(proInfoByTenantId.getId()); ktsKtGroupMapper.insertSelective(ktsKtGroup); + } else { ktsKtGroup.setUpdateBy(SecurityUtils.getUsername()); ktsKtGroup.setUpdateTime(new Date()); @@ -363,8 +364,14 @@ public class KtsGroupServiceImpl implements KtsGroupService { } @Override - public List queryNum() { - return ktsGroupDao.queryNum(); + public GroupVO.GroupNumResult queryNum() { + GroupVO.GroupNumResult groupNumResult = new GroupVO.GroupNumResult(); + List nums = ktsGroupDao.queryNum(); + if (CollUtil.isNotEmpty(nums)) { + groupNumResult.setList(nums); + groupNumResult.setTotal(nums.stream().map(GroupVO.Num::getNum).mapToInt(Integer::intValue).sum()); + } + return groupNumResult; } @Override @@ -376,4 +383,55 @@ public class KtsGroupServiceImpl implements KtsGroupService { public List kzzt() { return ktsGroupDao.kzzt(); } + + @Override + public Integer detailAdd(GroupDto.DetailAdd dto) { + KtsKtGroupWithBLOBs ktsKtGroup = ktsKtGroupMapper.selectByPrimaryKey(dto.getGroupId()); + if (ktsKtGroup == null) { + return 0; + } + ktsKtGroup.setTarget(dto.getFa()); + ktsKtGroup.setPlan(dto.getMb()); + ktsKtGroup.setUpdateBy(SecurityUtils.getUsername()); + ktsKtGroupMapper.updateByPrimaryKeySelective(ktsKtGroup); + + KtResearchContentExample ktResearchContentExample = new KtResearchContentExample(); + ktResearchContentExample.createCriteria().andKtGroupIdEqualTo(dto.getGroupId()).andDelFlagEqualTo((byte) 0); + KtResearchContent ktResearchContent1 = new KtResearchContent(); + ktResearchContent1.setDelFlag((byte) 1); + ktResearchContentMapper.updateByExampleSelective(ktResearchContent1, ktResearchContentExample); + + KtExpectedOutcomesExample outcomesExample = new KtExpectedOutcomesExample(); + outcomesExample.createCriteria().andKtGroupIdEqualTo(dto.getGroupId()).andDelFlagEqualTo((byte) 0); + KtExpectedOutcomes outcomes = new KtExpectedOutcomes(); + outcomes.setDelFlag((byte) 1); + ktExpectedOutcomesMapper.updateByExampleSelective(outcomes, outcomesExample); + + //添加内容和预期成果 + if (CollUtil.isNotEmpty(dto.getNrList())) { + List ktResearchContents = BeanUtil.copyToList(dto.getNrList(), KtResearchContent.class); + ktResearchContents.forEach(ktResearchContent -> { + ktResearchContent.setCreateBy(SecurityUtils.getUsername()); + ktResearchContent.setCreateTime(new Date()); + ktResearchContent.setDelFlag((byte) 0); + ktResearchContent.setKtGroupId(dto.getGroupId()); + ktResearchContent.setId(IdUtil.getSnowflakeNextId()); + ktResearchContentMapper.insertSelective(ktResearchContent); + }); + } + if (CollUtil.isNotEmpty(dto.getYqcgList())) { + List ktExpectedOutcomes = BeanUtil.copyToList(dto.getYqcgList(), KtExpectedOutcomes.class); + ktExpectedOutcomes.forEach(outcomes1 -> { + outcomes1.setCreateBy(SecurityUtils.getUsername()); + outcomes1.setCreateTime(new Date()); + outcomes1.setDelFlag((byte) 0); + outcomes1.setKtGroupId(dto.getGroupId()); + outcomes1.setId(IdUtil.getSnowflakeNextId()); + ktExpectedOutcomesMapper.insertSelective(outcomes1); + }); + } + return null; + } + + } diff --git a/research-system/src/main/resources/mapper/dao/ClientPrjProOrgDao.xml b/research-system/src/main/resources/mapper/dao/ClientPrjProOrgDao.xml index 11b22680..54274e1d 100644 --- a/research-system/src/main/resources/mapper/dao/ClientPrjProOrgDao.xml +++ b/research-system/src/main/resources/mapper/dao/ClientPrjProOrgDao.xml @@ -25,6 +25,8 @@ o.yskt, o.jscgzh, o.xsjl, + o.gcckjrc, + o.rcpy, (select count(*) from ach_achievement where del_flag = 0 and proj_org_id = o.id and category_id_1 = 1 ) as xslwNum, (select count(*) from ach_achievement where del_flag = 0 and proj_org_id = o.id and category_id_1 = 11) as zlsqysqNum, (select count(*) from ach_achievement where del_flag = 0 and proj_org_id = o.id and category_id_1 = 21) as rjzzqNum, @@ -33,6 +35,8 @@ (select count(*) from ach_achievement where del_flag = 0 and proj_org_id = o.id and category_id_1 = 51) as ysktNum, (select count(*) from ach_achievement where del_flag = 0 and proj_org_id = o.id and category_id_1 = 61) as jscgzhNum, (select count(*) from ach_achievement where del_flag = 0 and proj_org_id = o.id and category_id_1 = 71) as xsjlNum, + (select count(*) from ach_achievement where del_flag = 0 and proj_org_id = o.id and category_id_1 = 5) as gcckjrcNum, + (select count(*) from ach_achievement where del_flag = 0 and proj_org_id = o.id and category_id_1 = 6) as rcpyNum, o.contact_name as contactName, o.contact_phone as contactPhone from diff --git a/research-system/src/main/resources/mapper/system/KtExpectedOutcomesMapper.xml b/research-system/src/main/resources/mapper/system/KtExpectedOutcomesMapper.xml index fb8782ed..c2c977b0 100644 --- a/research-system/src/main/resources/mapper/system/KtExpectedOutcomesMapper.xml +++ b/research-system/src/main/resources/mapper/system/KtExpectedOutcomesMapper.xml @@ -246,7 +246,7 @@ remark = #{record.remark,jdbcType=VARCHAR}, - outcomes = #{record.outcomes,jdbcType=LONGVARCHAR}, + `outcomes` = #{record.outcomes,jdbcType=LONGVARCHAR},