Browse Source

添加科研成果一级分类统计

master
ccsens_zhengzhichuan 3 months ago
parent
commit
4c0ec59a11
  1. 5
      research-admin/src/main/java/com/research/web/controller/client/achievement/OutcomeController.java
  2. 6
      research-admin/src/main/java/com/research/web/controller/client/project/GroupController.java
  3. 1
      research-flowable/src/main/java/com/research/flowable/service/impl/FlowTaskServiceImpl.java
  4. 6
      research-system/src/main/java/com/research/system/domain/dto/CommonDto.java
  5. 5
      research-system/src/main/java/com/research/system/domain/dto/OutcomeDto.java
  6. 2
      research-system/src/main/java/com/research/system/domain/dto/ShsSyffCategoryDto.java
  7. 14
      research-system/src/main/java/com/research/system/domain/vo/GroupVO.java
  8. 1
      research-system/src/main/java/com/research/system/domain/vo/HomeVo.java
  9. 15
      research-system/src/main/java/com/research/system/domain/vo/OutcomeVo.java
  10. 2
      research-system/src/main/java/com/research/system/domain/vo/ShsCkwxVo.java
  11. 2
      research-system/src/main/java/com/research/system/domain/vo/ShsSyffCategoryVo.java
  12. 2
      research-system/src/main/java/com/research/system/persist/dao/OutcomeDao.java
  13. 2
      research-system/src/main/java/com/research/system/service/KtsGroupService.java
  14. 3
      research-system/src/main/java/com/research/system/service/OutcomeService.java
  15. 2
      research-system/src/main/java/com/research/system/service/impl/HomeServiceImpl.java
  16. 26
      research-system/src/main/java/com/research/system/service/impl/KtsGroupServiceImpl.java
  17. 5
      research-system/src/main/java/com/research/system/service/impl/OutcomeServiceImpl.java
  18. 3
      research-system/src/main/resources/mapper/dao/HomeDao.xml
  19. 12
      research-system/src/main/resources/mapper/dao/KtsGroupDao.xml
  20. 11
      research-system/src/main/resources/mapper/dao/OutcomeDao.xml
  21. 33
      research-system/src/main/resources/mapper/dao/ShsCkwxDao.xml
  22. 9
      research-system/src/main/resources/mapper/dao/ShsSyffDao.xml

5
research-admin/src/main/java/com/research/web/controller/client/achievement/OutcomeController.java

@ -73,4 +73,9 @@ public class OutcomeController {
outcomeService.delCategory(dto); outcomeService.delCategory(dto);
return JsonResponse.ok(); return JsonResponse.ok();
} }
@PostMapping("/queryStatistics")
public JsonResponse<List<OutcomeVo.Statistics>> queryStatistics(@RequestBody @Validated OutcomeDto.Statistics dto){
return JsonResponse.ok(outcomeService.queryStatistics(dto.getCategoryId()));
}
} }

6
research-admin/src/main/java/com/research/web/controller/client/project/GroupController.java

@ -135,6 +135,12 @@ public class GroupController {
return JsonResponse.ok(); return JsonResponse.ok();
} }
@PostMapping("/queryMemberGroup")
public JsonResponse<List<GroupVO.Result>> queryMemberGroup(@RequestBody @Validated CommonDto.PhoneDto dto){
return JsonResponse.ok(ktsGroupService.queryMemberGroup(dto.getPhone()));
}
@PostMapping("/config/add") @PostMapping("/config/add")
public JsonResponse<Integer> configAdd(@RequestBody @Validated GroupDto.ConfigAdd dto) { public JsonResponse<Integer> configAdd(@RequestBody @Validated GroupDto.ConfigAdd dto) {
return JsonResponse.ok(ktsGroupService.configAdd(dto)); return JsonResponse.ok(ktsGroupService.configAdd(dto));

1
research-flowable/src/main/java/com/research/flowable/service/impl/FlowTaskServiceImpl.java

@ -111,6 +111,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask
return AjaxResult.success(); return AjaxResult.success();
} }
/** /**
* 驳回任务 * 驳回任务
* *

6
research-system/src/main/java/com/research/system/domain/dto/CommonDto.java

@ -27,6 +27,12 @@ public class CommonDto {
private List<Long> idList; private List<Long> idList;
} }
@Data
public static class PhoneDto{
@NotNull(message = "手机号不能为空")
private String phone;
}
@Data @Data
public static class StatusDto{ public static class StatusDto{
@ApiModelProperty("状态") @ApiModelProperty("状态")

5
research-system/src/main/java/com/research/system/domain/dto/OutcomeDto.java

@ -30,6 +30,11 @@ public class OutcomeDto {
private Byte achType; private Byte achType;
} }
@Data
public static class Statistics {
private Long categoryId;
}
@Data @Data
public static class QueryCategory { public static class QueryCategory {
private String categoryName; private String categoryName;

2
research-system/src/main/java/com/research/system/domain/dto/ShsSyffCategoryDto.java

@ -22,6 +22,8 @@ public class ShsSyffCategoryDto {
private String categoryCode; private String categoryCode;
private String categoryName; private String categoryName;
private Long categoryId;
} }
@Data @Data

14
research-system/src/main/java/com/research/system/domain/vo/GroupVO.java

@ -73,13 +73,13 @@ public class GroupVO {
private List<Result> childrenList; private List<Result> childrenList;
private Integer planTotal; private int planTotal;
private Long planIng; private long planIng;
private Integer cgTotal; private int cgTotal;
private Long cgIng; private long cgIng;
} }
@ -316,12 +316,12 @@ public class GroupVO {
private Long orgId; private Long orgId;
private String orgName; private String orgName;
private int total; private int total;
private int bk;//本科
private int bs;//博士
private int ss;//硕士 private int ss;//硕士
private int bs;//博士
private int bsh;//博士后
public int getTotal() { public int getTotal() {
return bk + bs + ss; return bsh + bs + ss;
} }
} }
} }

1
research-system/src/main/java/com/research/system/domain/vo/HomeVo.java

@ -48,6 +48,7 @@ public class HomeVo {
private Long id; private Long id;
private String ktGroupName; private String ktGroupName;
private String orgName; private String orgName;
private Long orgId;
private String completionPercentage = "0"; private String completionPercentage = "0";
private List<GroupVO.Result> groupList; private List<GroupVO.Result> groupList;
} }

15
research-system/src/main/java/com/research/system/domain/vo/OutcomeVo.java

@ -128,4 +128,19 @@ public class OutcomeVo {
private String name; private String name;
private Byte type; private Byte type;
} }
@Data
public static class Statistics{
@ApiModelProperty("组织ID")
private Long orgId;
@ApiModelProperty("组织名称")
private String orgName;
@ApiModelProperty("一级数量")
private int num;
@ApiModelProperty("二级数量")
private int num1;
private int num2;
private int num3;
private int num4;
}
} }

2
research-system/src/main/java/com/research/system/domain/vo/ShsCkwxVo.java

@ -78,6 +78,8 @@ public class ShsCkwxVo {
private String createBy; private String createBy;
private Date createTime; private Date createTime;
private int num;
} }
} }

2
research-system/src/main/java/com/research/system/domain/vo/ShsSyffCategoryVo.java

@ -82,6 +82,8 @@ public class ShsSyffCategoryVo {
@ApiModelProperty("") @ApiModelProperty("")
private Date createTime; private Date createTime;
private String parentCategoryName; private String parentCategoryName;
private int num;
} }
} }

2
research-system/src/main/java/com/research/system/persist/dao/OutcomeDao.java

@ -20,4 +20,6 @@ public interface OutcomeDao {
List<OutcomeVo.CategoryResult> queryCategoryList(@Param("dto") OutcomeDto.QueryCategory dto); List<OutcomeVo.CategoryResult> queryCategoryList(@Param("dto") OutcomeDto.QueryCategory dto);
int selectNumByCategoryId(@Param("categoryId") Long categoryId, @Param("parentId") Long parentId); int selectNumByCategoryId(@Param("categoryId") Long categoryId, @Param("parentId") Long parentId);
List<OutcomeVo.Statistics> queryStatistics(@Param("categoryId") Long categoryId);
} }

2
research-system/src/main/java/com/research/system/service/KtsGroupService.java

@ -43,7 +43,7 @@ public interface KtsGroupService {
void aduitMember(Long memberId, Byte status); void aduitMember(Long memberId, Byte status);
List<GroupVO.Result> queryMemberGroup(); List<GroupVO.Result> queryMemberGroup(String phone);
Integer configAdd(GroupDto.ConfigAdd dto); Integer configAdd(GroupDto.ConfigAdd dto);

3
research-system/src/main/java/com/research/system/service/OutcomeService.java

@ -25,4 +25,7 @@ public interface OutcomeService {
void addCategory(OutcomeDto.AddCategory dto); void addCategory(OutcomeDto.AddCategory dto);
void delCategory(CommonDto.DelDto dto); void delCategory(CommonDto.DelDto dto);
List<OutcomeVo.Statistics> queryStatistics(Long categoryId);
} }

2
research-system/src/main/java/com/research/system/service/impl/HomeServiceImpl.java

@ -64,7 +64,7 @@ public class HomeServiceImpl implements HomeService {
} }
//查询子课题组 //查询子课题组
KtsKtGroupExample ktsKtGroupExample = new KtsKtGroupExample(); KtsKtGroupExample ktsKtGroupExample = new KtsKtGroupExample();
ktsKtGroupExample.createCriteria().andParentKtIdEqualTo(groupResult.getId()).andDelFlagEqualTo((byte) 0); ktsKtGroupExample.createCriteria().andParentKtIdEqualTo(0L).andProjOrgIdEqualTo(groupResult.getOrgId()).andDelFlagEqualTo((byte) 0);
List<KtsKtGroup> ktsKtGroups = ktsKtGroupMapper.selectByExample(ktsKtGroupExample); List<KtsKtGroup> ktsKtGroups = ktsKtGroupMapper.selectByExample(ktsKtGroupExample);
if (CollUtil.isNotEmpty(ktsKtGroups)) { if (CollUtil.isNotEmpty(ktsKtGroups)) {
List<GroupVO.Result> results = BeanUtil.copyToList(ktsKtGroups, GroupVO.Result.class); List<GroupVO.Result> results = BeanUtil.copyToList(ktsKtGroups, GroupVO.Result.class);

26
research-system/src/main/java/com/research/system/service/impl/KtsGroupServiceImpl.java

@ -95,7 +95,20 @@ public class KtsGroupServiceImpl implements KtsGroupService {
public List<GroupVO.Result> childList(GroupDto.Query query) { public List<GroupVO.Result> childList(GroupDto.Query query) {
List<GroupVO.Result> groupList = queryGroupList(query); List<GroupVO.Result> groupList = queryGroupList(query);
if (CollUtil.isNotEmpty(groupList)) { if (CollUtil.isNotEmpty(groupList)) {
return buildTree(groupList); List<GroupVO.Result> results = buildTree(groupList);
if (CollUtil.isNotEmpty(results)) {
for (GroupVO.Result result : results) {
List<GroupVO.Result> childrenList = result.getChildrenList();
result.setPlanTotal(childrenList.stream().mapToInt(GroupVO.Result::getPlanTotal).sum());
result.setPlanIng(childrenList.stream().mapToLong(GroupVO.Result::getPlanIng).sum());
int i = 1;
for (GroupVO.Result result1 : childrenList) {
result1.setSort(i);
i++;
}
}
}
return results;
} }
return new ArrayList<>(); return new ArrayList<>();
} }
@ -374,11 +387,18 @@ public class KtsGroupServiceImpl implements KtsGroupService {
} }
@Override @Override
public List<GroupVO.Result> queryMemberGroup() { public List<GroupVO.Result> queryMemberGroup(String phone) {
//根据手机号查询用户课题组 //根据手机号查询用户课题组
KtsKtGroupMemberExample ktsKtGroupMemberExample = new KtsKtGroupMemberExample(); KtsKtGroupMemberExample ktsKtGroupMemberExample = new KtsKtGroupMemberExample();
ktsKtGroupMemberExample.createCriteria().andMemberPhoneEqualTo(SecurityUtils.getLoginUser().getUsername()); ktsKtGroupMemberExample.createCriteria().andMemberPhoneEqualTo(phone).andDelFlagEqualTo((byte) 0);
List<KtsKtGroupMember> ktsKtGroupMembers = ktsKtGroupMemberMapper.selectByExample(ktsKtGroupMemberExample); List<KtsKtGroupMember> ktsKtGroupMembers = ktsKtGroupMemberMapper.selectByExample(ktsKtGroupMemberExample);
if (CollUtil.isNotEmpty(ktsKtGroupMembers)) {
List<Long> collect = ktsKtGroupMembers.stream().map(KtsKtGroupMember::getKtGroupId).collect(Collectors.toList());
KtsKtGroupExample ktsKtGroupExample = new KtsKtGroupExample();
ktsKtGroupExample.createCriteria().andIdIn(collect).andDelFlagEqualTo((byte) 0);
List<KtsKtGroup> ktsKtGroups = ktsKtGroupMapper.selectByExample(ktsKtGroupExample);
return BeanUtil.copyToList(ktsKtGroups, GroupVO.Result.class);
}
return null; return null;
} }

5
research-system/src/main/java/com/research/system/service/impl/OutcomeServiceImpl.java

@ -143,4 +143,9 @@ public class OutcomeServiceImpl implements OutcomeService {
achAchievementCategory.setDelFlag((byte) 1); achAchievementCategory.setDelFlag((byte) 1);
achAchievementCategoryMapper.updateByExampleSelective(achAchievementCategory, achAchievementCategoryExample); achAchievementCategoryMapper.updateByExampleSelective(achAchievementCategory, achAchievementCategoryExample);
} }
@Override
public List<OutcomeVo.Statistics> queryStatistics(Long categoryId) {
return outcomeDao.queryStatistics(categoryId);
}
} }

3
research-system/src/main/resources/mapper/dao/HomeDao.xml

@ -21,7 +21,8 @@
<select id="queryGroupList" resultType="com.research.system.domain.vo.HomeVo$GroupResult"> <select id="queryGroupList" resultType="com.research.system.domain.vo.HomeVo$GroupResult">
select g.id, select g.id,
g.kt_group_name as ktGroupName, g.kt_group_name as ktGroupName,
o.org_name as orgName o.org_name as orgName,
o.id as orgId
from prj_proj_org o from prj_proj_org o
left join left join
kts_kt_group g on g.proj_org_id = o.id and g.parent_kt_id = 0 and g.del_flag = 0 kts_kt_group g on g.proj_org_id = o.id and g.parent_kt_id = 0 and g.del_flag = 0

12
research-system/src/main/resources/mapper/dao/KtsGroupDao.xml

@ -193,9 +193,9 @@
<select id="queryZdXlStatistics" resultType="com.research.system.domain.vo.GroupVO$Statistics$Xl"> <select id="queryZdXlStatistics" resultType="com.research.system.domain.vo.GroupVO$Statistics$Xl">
select o.id as orgId, select o.id as orgId,
o.org_name as orgName, o.org_name as orgName,
SUM(CASE WHEN m.qualification = '5' THEN 1 ELSE 0 END) AS bk, SUM(CASE WHEN m.qualification = '5' THEN 1 ELSE 0 END) AS ss,
SUM(CASE WHEN m.qualification = '6' THEN 1 ELSE 0 END) AS ss, SUM(CASE WHEN m.qualification = '6' THEN 1 ELSE 0 END) AS bs,
SUM(CASE WHEN m.qualification = '7' THEN 1 ELSE 0 END) AS bs SUM(CASE WHEN m.qualification = '7' THEN 1 ELSE 0 END) AS bsh
from prj_proj_org o from prj_proj_org o
left join left join
kts_kt_group g on g.proj_org_id = o.id and g.del_flag = 0 kts_kt_group g on g.proj_org_id = o.id and g.del_flag = 0
@ -207,9 +207,9 @@
<select id="queryByXlStatistics" resultType="com.research.system.domain.vo.GroupVO$Statistics$Xl"> <select id="queryByXlStatistics" resultType="com.research.system.domain.vo.GroupVO$Statistics$Xl">
select o.id as orgId, select o.id as orgId,
o.org_name as orgName, o.org_name as orgName,
SUM(CASE WHEN m.qualification = '5' THEN 1 ELSE 0 END) AS bk, SUM(CASE WHEN m.qualification = '5' THEN 1 ELSE 0 END) AS ss,
SUM(CASE WHEN m.qualification = '6' THEN 1 ELSE 0 END) AS ss, SUM(CASE WHEN m.qualification = '6' THEN 1 ELSE 0 END) AS bs,
SUM(CASE WHEN m.qualification = '7' THEN 1 ELSE 0 END) AS bs SUM(CASE WHEN m.qualification = '7' THEN 1 ELSE 0 END) AS bsh
from prj_proj_org o from prj_proj_org o
left join left join
kts_kt_group g on g.proj_org_id = o.id and g.del_flag = 0 kts_kt_group g on g.proj_org_id = o.id and g.del_flag = 0

11
research-system/src/main/resources/mapper/dao/OutcomeDao.xml

@ -117,4 +117,15 @@
AND category_id_2 = #{categoryId} AND category_id_2 = #{categoryId}
</if> </if>
</select> </select>
<select id="queryStatistics" resultType="com.research.system.domain.vo.OutcomeVo$Statistics">
select o.id as orgId,
o.org_name as orgName,
COUNT(a.id) as num
from prj_proj_org o
left join
ach_achievement a on a.proj_org_id = o.id and a.del_flag = 0 and category_id_1 = #{categoryId}
where o.del_flag = 0
group by o.id
</select>
</mapper> </mapper>

33
research-system/src/main/resources/mapper/dao/ShsCkwxDao.xml

@ -46,24 +46,31 @@
<select id="queryCategoryList" resultType="com.research.system.domain.vo.ShsCkwxVo$CategoryResult"> <select id="queryCategoryList" resultType="com.research.system.domain.vo.ShsCkwxVo$CategoryResult">
select select
id, c.id,
proj_id as projId, c.proj_id as projId,
parent_id as parentId, c.parent_id as parentId,
category_code as categoryCode, c.category_code as categoryCode,
category_name as categoryName, c.category_name as categoryName,
sort, c.sort,
remark, c.remark,
create_by as createBy, c.create_by as createBy,
create_time as createTime c.create_time as createTime,
count(i.id) as num
from from
shs_ckwx_category shs_ckwx_category c
left join
shs_ckwx_info i on c.id = i.category_id
where where
del_flag = 0 c.del_flag = 0
<if test="dto.categoryCode != null"> <if test="dto.categoryCode != null">
and category_code like concat('%',#{dto.categoryCode},'%') and c.category_code like concat('%',#{dto.categoryCode},'%')
</if> </if>
<if test="dto.categoryName != null"> <if test="dto.categoryName != null">
and category_name like concat('%',#{dto.categoryName},'%') and c.category_name like concat('%',#{dto.categoryName},'%')
</if> </if>
group by
c.id
order by
c.sort desc
</select> </select>
</mapper> </mapper>

9
research-system/src/main/resources/mapper/dao/ShsSyffDao.xml

@ -37,6 +37,9 @@
<if test="dto.categoryName != null and dto.categoryName != ''"> <if test="dto.categoryName != null and dto.categoryName != ''">
and c.category_name like concat('%',#{dto.categoryName},'%') and c.category_name like concat('%',#{dto.categoryName},'%')
</if> </if>
<if test="dto.categoryId != null">
and c.id = #{dto.categoryId}
</if>
</select> </select>
<select id="queryCategory" resultType="com.research.system.domain.vo.ShsSyffCategoryVo$CategoryResult"> <select id="queryCategory" resultType="com.research.system.domain.vo.ShsSyffCategoryVo$CategoryResult">
@ -50,11 +53,14 @@
i.remark, i.remark,
i.create_by as createBy, i.create_by as createBy,
i.create_time as createTime, i.create_time as createTime,
r.category_name as parentCategoryName r.category_name as parentCategoryName,
count(s.id) as num
from from
shs_syff_category i shs_syff_category i
left join left join
shs_syff_category r on r.id = i.parent_id shs_syff_category r on r.id = i.parent_id
left join
shs_syff_info s on s.category_id = i.id
where where
i.del_flag = 0 i.del_flag = 0
<if test="dto.categoryCode != null and dto.categoryCode != ''"> <if test="dto.categoryCode != null and dto.categoryCode != ''">
@ -63,6 +69,7 @@
<if test="dto.categoryName != null and dto.categoryName != ''"> <if test="dto.categoryName != null and dto.categoryName != ''">
and i.category_name like concat('%',#{dto.categoryName},'%') and i.category_name like concat('%',#{dto.categoryName},'%')
</if> </if>
group by i.id
order by order by
id, parentId, sort id, parentId, sort
</select> </select>

Loading…
Cancel
Save