Browse Source

修改问题

master
ccsens_zhengzhichuan 2 months ago
parent
commit
fd7a25064b
  1. 8
      research-admin/src/main/java/com/research/web/controller/client/ExportController.java
  2. 5
      research-admin/src/main/java/com/research/web/controller/client/project/GroupController.java
  3. 3
      research-admin/src/main/java/com/research/web/controller/client/project/SysTitleController.java
  4. 1
      research-admin/src/main/resources/application-dev.yml
  5. 1
      research-admin/src/main/resources/application-prod.yml
  6. 4
      research-generator/src/main/resources/mbg.xml
  7. 1
      research-system/src/main/java/com/research/system/domain/dto/ClientPrjProOrgDto.java
  8. 29
      research-system/src/main/java/com/research/system/domain/dto/ExportDto.java
  9. 6
      research-system/src/main/java/com/research/system/domain/dto/FundingDto.java
  10. 14
      research-system/src/main/java/com/research/system/domain/dto/GroupDto.java
  11. 15
      research-system/src/main/java/com/research/system/domain/dto/MemberAduitDto.java
  12. 1
      research-system/src/main/java/com/research/system/domain/dto/OutcomeDto.java
  13. 8
      research-system/src/main/java/com/research/system/domain/po/KtsKtGroupMember.java
  14. 8
      research-system/src/main/java/com/research/system/domain/po/KtsKtGroupMemberAduit.java
  15. 30
      research-system/src/main/java/com/research/system/domain/po/KtsKtGroupMemberAduitExample.java
  16. 30
      research-system/src/main/java/com/research/system/domain/po/KtsKtGroupMemberExample.java
  17. 92
      research-system/src/main/java/com/research/system/domain/vo/GroupVO.java
  18. 12
      research-system/src/main/java/com/research/system/domain/vo/MemberAduitVo.java
  19. 2
      research-system/src/main/java/com/research/system/persist/dao/KtsGroupDao.java
  20. 4
      research-system/src/main/java/com/research/system/service/ExportService.java
  21. 3
      research-system/src/main/java/com/research/system/service/KtsGroupService.java
  22. 257
      research-system/src/main/java/com/research/system/service/impl/ExportServiceImpl.java
  23. 22
      research-system/src/main/java/com/research/system/service/impl/KtsGroupServiceImpl.java
  24. 10
      research-system/src/main/java/com/research/system/service/impl/MemberAduitServiceImpl.java
  25. 1
      research-system/src/main/resources/mapper/dao/ClientPrjProOrgDao.xml
  26. 4
      research-system/src/main/resources/mapper/dao/FundingDao.xml
  27. 20
      research-system/src/main/resources/mapper/dao/KtsGroupDao.xml
  28. 16
      research-system/src/main/resources/mapper/dao/MemberAduitDao.xml
  29. 3
      research-system/src/main/resources/mapper/dao/OutcomeDao.xml
  30. 14
      research-system/src/main/resources/mapper/system/KtsKtGroupMemberAduitMapper.xml
  31. 14
      research-system/src/main/resources/mapper/system/KtsKtGroupMemberMapper.xml

8
research-admin/src/main/java/com/research/web/controller/client/ExportController.java

@ -1,9 +1,13 @@
package com.research.web.controller.client; package com.research.web.controller.client;
import com.research.system.domain.dto.ExportDto;
import com.research.system.service.ExportService; import com.research.system.service.ExportService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
@ -28,8 +32,8 @@ public class ExportController {
@ApiOperation(value = "导出项目运行报告") @ApiOperation(value = "导出项目运行报告")
@RequestMapping(value = "/all", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) @RequestMapping(value = "/all", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public void export(HttpServletResponse response){ public void export(HttpServletResponse response,@ApiParam @Validated @RequestBody ExportDto.Query dto) {
exportService.export( response); exportService.export(response, dto);
} }

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

@ -181,6 +181,11 @@ public class GroupController {
return JsonResponse.ok(ktsGroupService.workerStatistics()); return JsonResponse.ok(ktsGroupService.workerStatistics());
} }
@PostMapping("/gzryxlStatistics")
public JsonResponse<List<GroupVO.Gzryxl>> gzryxlStatistics(){
return JsonResponse.ok(ktsGroupService.gzryxlStatistics());
}
@PostMapping("/studentStatistics") @PostMapping("/studentStatistics")
public JsonResponse<List<GroupVO.StudentResult>> queryStudentList(){ public JsonResponse<List<GroupVO.StudentResult>> queryStudentList(){
return JsonResponse.ok(ktsGroupService.queryStudentList(new GroupDto.Query())); return JsonResponse.ok(ktsGroupService.queryStudentList(new GroupDto.Query()));

3
research-admin/src/main/java/com/research/web/controller/client/project/SysTitleController.java

@ -2,6 +2,7 @@ package com.research.web.controller.client.project;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.research.common.annotation.Anonymous;
import com.research.common.core.domain.BaseDto; import com.research.common.core.domain.BaseDto;
import com.research.common.core.domain.JsonResponse; import com.research.common.core.domain.JsonResponse;
import com.research.system.domain.dto.DocumentDto; import com.research.system.domain.dto.DocumentDto;
@ -33,6 +34,8 @@ public class SysTitleController {
@Resource @Resource
private SysTitleService sysTitleService; private SysTitleService sysTitleService;
@Anonymous
@PostMapping("/query") @PostMapping("/query")
public JsonResponse<PageInfo<SysTitle>> queryList(@RequestBody @Validated BaseDto dto){ public JsonResponse<PageInfo<SysTitle>> queryList(@RequestBody @Validated BaseDto dto){
if (dto.getPageNum() > 0) { if (dto.getPageNum() > 0) {

1
research-admin/src/main/resources/application-dev.yml

@ -64,3 +64,4 @@ server:
port: 8080 port: 8080
research: research:
reportTemplate: C:\Users\zzc16\Desktop\report_template.docx reportTemplate: C:\Users\zzc16\Desktop\report_template.docx
reportGrTemplate: C:\Users\zzc16\Desktop\reportGrTemplate.docx

1
research-admin/src/main/resources/application-prod.yml

@ -64,3 +64,4 @@ server:
port: 38081 port: 38081
research: research:
reportTemplate: D:\Projects\research\server\profile\reportTemplate.docx reportTemplate: D:\Projects\research\server\profile\reportTemplate.docx
reportGrTemplate: D:\Projects\research\server\profile\reportGrTemplate.docx

4
research-generator/src/main/resources/mbg.xml

@ -68,13 +68,13 @@
<!-- <table tableName="ach_achievement_category" domainObjectName="AchAchievementCategory" enableDeleteByExample="false"/>--> <!-- <table tableName="ach_achievement_category" domainObjectName="AchAchievementCategory" enableDeleteByExample="false"/>-->
<!-- <table tableName="fud_fund_record" domainObjectName="FudFundRecord" enableDeleteByExample="false"/>--> <!-- <table tableName="fud_fund_record" domainObjectName="FudFundRecord" enableDeleteByExample="false"/>-->
<!-- <table tableName="kts_kt_group" domainObjectName="KtsKtGroup" enableDeleteByExample="false"/>--> <!-- <table tableName="kts_kt_group" domainObjectName="KtsKtGroup" enableDeleteByExample="false"/>-->
<table tableName="kts_kt_group_member" domainObjectName="KtsKtGroupMember" enableDeleteByExample="false"/> <!-- <table tableName="kts_kt_group_member" domainObjectName="KtsKtGroupMember" enableDeleteByExample="false"/>-->
<!-- <table tableName="met_meeting_participant" domainObjectName="MetMeetingParticipant" enableDeleteByExample="false"/>--> <!-- <table tableName="met_meeting_participant" domainObjectName="MetMeetingParticipant" enableDeleteByExample="false"/>-->
<!-- <table tableName="met_meeting_record" domainObjectName="MetMeetingRecord" enableDeleteByExample="false"/>--> <!-- <table tableName="met_meeting_record" domainObjectName="MetMeetingRecord" enableDeleteByExample="false"/>-->
<!-- <table tableName="prj_proj_document" domainObjectName="PrjProjDocument" enableDeleteByExample="false"/>--> <!-- <table tableName="prj_proj_document" domainObjectName="PrjProjDocument" enableDeleteByExample="false"/>-->
<!-- <table tableName="prj_proj_info" domainObjectName="PrjProjInfo" enableDeleteByExample="false"/>--> <!-- <table tableName="prj_proj_info" domainObjectName="PrjProjInfo" enableDeleteByExample="false"/>-->
<!-- <table tableName="prj_proj_org" domainObjectName="PrjProjOrg" enableDeleteByExample="false"/>--> <!-- <table tableName="prj_proj_org" domainObjectName="PrjProjOrg" enableDeleteByExample="false"/>-->
<!-- <table tableName="kts_kt_group_member_aduit" domainObjectName="KtsKtGroupMemberAduit" enableDeleteByExample="false"/>--> <table tableName="kts_kt_group_member_aduit" domainObjectName="KtsKtGroupMemberAduit" enableDeleteByExample="false"/>
<!-- <table tableName="srv_message" domainObjectName="SrvMessage" enableDeleteByExample="false"/>--> <!-- <table tableName="srv_message" domainObjectName="SrvMessage" enableDeleteByExample="false"/>-->
<!-- <table tableName="shs_ckwx_category" domainObjectName="ShsCkwxCategory" enableDeleteByExample="false"/>--> <!-- <table tableName="shs_ckwx_category" domainObjectName="ShsCkwxCategory" enableDeleteByExample="false"/>-->
<!-- <table tableName="shs_ckwx_info" domainObjectName="ShsCkwxInfo" enableDeleteByExample="false"/>--> <!-- <table tableName="shs_ckwx_info" domainObjectName="ShsCkwxInfo" enableDeleteByExample="false"/>-->

1
research-system/src/main/java/com/research/system/domain/dto/ClientPrjProOrgDto.java

@ -20,6 +20,7 @@ public class ClientPrjProOrgDto {
private String orgName; private String orgName;
private String orgLeader; private String orgLeader;
private String orgLeaderPhone; private String orgLeaderPhone;
private String username;
} }
} }

29
research-system/src/main/java/com/research/system/domain/dto/ExportDto.java

@ -0,0 +1,29 @@
package com.research.system.domain.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @Author zzc
* @Package com.research.system.domain.dto
* @Date 2026/1/13 16:41
* @description:
*/
public class ExportDto {
@Data
public static class Query {
@ApiModelProperty("0整体 1个人")
private int type = 0;
@ApiModelProperty("单位")
private Long orgId;
@ApiModelProperty("开始时间")
private String startTime;
@ApiModelProperty("结束时间")
private String endTime;
private Long userId;
}
}

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

@ -16,9 +16,9 @@ public class FundingDto {
@Data @Data
public static class Query { public static class Query {
private String projOrgId;//合作单位id', private Long projOrgId;//合作单位id',
private String ktGroupId;//课题组id', private Long ktGroupId;//课题组id',
private String payType;//经费类型:0-收入,1-支出', private Byte payType;//经费类型:0-收入,1-支出',
} }
@Data @Data

14
research-system/src/main/java/com/research/system/domain/dto/GroupDto.java

@ -1,5 +1,6 @@
package com.research.system.domain.dto; package com.research.system.domain.dto;
import cn.hutool.core.collection.CollUtil;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import com.research.system.domain.po.KtsKtGroupMember; import com.research.system.domain.po.KtsKtGroupMember;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
@ -8,6 +9,7 @@ import lombok.Data;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.stream.Collectors;
/** /**
* @Author zzc * @Author zzc
@ -38,6 +40,7 @@ public class GroupDto {
@Data @Data
public static class MemberQuery { public static class MemberQuery {
private Long projOrgId;
@ApiModelProperty("课题组id") @ApiModelProperty("课题组id")
private Long ktGroupId; private Long ktGroupId;
@ApiModelProperty("姓名") @ApiModelProperty("姓名")
@ -45,7 +48,7 @@ public class GroupDto {
@ApiModelProperty("电话") @ApiModelProperty("电话")
private String memberPhone; private String memberPhone;
@ApiModelProperty("成员类型:0-课题组负责人,1-课题组成员") @ApiModelProperty("成员类型:0-课题组负责人,1-课题组成员")
private Byte type; private String type;
@ApiModelProperty("审核状态:0-待审核,1-拒绝,2-通过") @ApiModelProperty("审核状态:0-待审核,1-拒绝,2-通过")
private Byte auditStatus; private Byte auditStatus;
private Byte category; private Byte category;
@ -115,7 +118,7 @@ public class GroupDto {
@JsonFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd")
private Date memberBirth; private Date memberBirth;
private Byte type; private List<String> type;
private Byte category; private Byte category;
@ -159,6 +162,13 @@ public class GroupDto {
@ApiModelProperty("在读状态(0在读硕士、1在读博士、2在读博士后)") @ApiModelProperty("在读状态(0在读硕士、1在读博士、2在读博士后)")
private Byte readingStatus; private Byte readingStatus;
public String getType() {
if (CollUtil.isNotEmpty(type)) {
return type.stream().collect(Collectors.joining(","));
}
return null;
}
} }
@Data @Data

15
research-system/src/main/java/com/research/system/domain/dto/MemberAduitDto.java

@ -1,11 +1,13 @@
package com.research.system.domain.dto; package com.research.system.domain.dto;
import cn.hutool.core.collection.CollUtil;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.stream.Collectors;
/** /**
* @Author zzc * @Author zzc
@ -42,13 +44,13 @@ public class MemberAduitDto {
@JsonFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd")
private Date memberBirth; private Date memberBirth;
private Byte type; private List<String> type;
private Byte category; private Byte category;
private Integer qualification; private Integer qualification;
private Integer title; private String title;
private Integer sort; private Integer sort;
@ -76,6 +78,12 @@ public class MemberAduitDto {
private String phone; private String phone;
@ApiModelProperty("负责人") @ApiModelProperty("负责人")
private String name; private String name;
public String getType() {
if (CollUtil.isNotEmpty(type)) {
return type.stream().collect(Collectors.joining(","));
}
return null;
}
} }
@Data @Data
@ -94,6 +102,7 @@ public class MemberAduitDto {
private Long ktGroupId; private Long ktGroupId;
private String memberName; private String memberName;
private String memberPhone; private String memberPhone;
private Byte status; private Byte memberStatus;
private String category;
} }
} }

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

@ -28,6 +28,7 @@ public class OutcomeDto {
private Long categoryId1; private Long categoryId1;
private Long categoryId2; private Long categoryId2;
private Byte achType; private Byte achType;
private String username;
} }
@Data @Data

8
research-system/src/main/java/com/research/system/domain/po/KtsKtGroupMember.java

@ -22,7 +22,7 @@ public class KtsKtGroupMember implements Serializable {
private Date memberBirth; private Date memberBirth;
private Byte type; private String type;
private Byte category; private Byte category;
@ -130,12 +130,12 @@ public class KtsKtGroupMember implements Serializable {
this.memberBirth = memberBirth; this.memberBirth = memberBirth;
} }
public Byte getType() { public String getType() {
return type; return type;
} }
public void setType(Byte type) { public void setType(String type) {
this.type = type; this.type = type == null ? null : type.trim();
} }
public Byte getCategory() { public Byte getCategory() {

8
research-system/src/main/java/com/research/system/domain/po/KtsKtGroupMemberAduit.java

@ -34,7 +34,7 @@ public class KtsKtGroupMemberAduit implements Serializable {
private String title; private String title;
private Byte type; private String type;
private Long userId; private Long userId;
@ -190,12 +190,12 @@ public class KtsKtGroupMemberAduit implements Serializable {
this.title = title == null ? null : title.trim(); this.title = title == null ? null : title.trim();
} }
public Byte getType() { public String getType() {
return type; return type;
} }
public void setType(Byte type) { public void setType(String type) {
this.type = type; this.type = type == null ? null : type.trim();
} }
public Long getUserId() { public Long getUserId() {

30
research-system/src/main/java/com/research/system/domain/po/KtsKtGroupMemberAduitExample.java

@ -1085,52 +1085,62 @@ public class KtsKtGroupMemberAduitExample {
return (Criteria) this; return (Criteria) this;
} }
public Criteria andTypeEqualTo(Byte value) { public Criteria andTypeEqualTo(String value) {
addCriterion("type =", value, "type"); addCriterion("type =", value, "type");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andTypeNotEqualTo(Byte value) { public Criteria andTypeNotEqualTo(String value) {
addCriterion("type <>", value, "type"); addCriterion("type <>", value, "type");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andTypeGreaterThan(Byte value) { public Criteria andTypeGreaterThan(String value) {
addCriterion("type >", value, "type"); addCriterion("type >", value, "type");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andTypeGreaterThanOrEqualTo(Byte value) { public Criteria andTypeGreaterThanOrEqualTo(String value) {
addCriterion("type >=", value, "type"); addCriterion("type >=", value, "type");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andTypeLessThan(Byte value) { public Criteria andTypeLessThan(String value) {
addCriterion("type <", value, "type"); addCriterion("type <", value, "type");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andTypeLessThanOrEqualTo(Byte value) { public Criteria andTypeLessThanOrEqualTo(String value) {
addCriterion("type <=", value, "type"); addCriterion("type <=", value, "type");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andTypeIn(List<Byte> values) { public Criteria andTypeLike(String value) {
addCriterion("type like", value, "type");
return (Criteria) this;
}
public Criteria andTypeNotLike(String value) {
addCriterion("type not like", value, "type");
return (Criteria) this;
}
public Criteria andTypeIn(List<String> values) {
addCriterion("type in", values, "type"); addCriterion("type in", values, "type");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andTypeNotIn(List<Byte> values) { public Criteria andTypeNotIn(List<String> values) {
addCriterion("type not in", values, "type"); addCriterion("type not in", values, "type");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andTypeBetween(Byte value1, Byte value2) { public Criteria andTypeBetween(String value1, String value2) {
addCriterion("type between", value1, value2, "type"); addCriterion("type between", value1, value2, "type");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andTypeNotBetween(Byte value1, Byte value2) { public Criteria andTypeNotBetween(String value1, String value2) {
addCriterion("type not between", value1, value2, "type"); addCriterion("type not between", value1, value2, "type");
return (Criteria) this; return (Criteria) this;
} }

30
research-system/src/main/java/com/research/system/domain/po/KtsKtGroupMemberExample.java

@ -722,52 +722,62 @@ public class KtsKtGroupMemberExample {
return (Criteria) this; return (Criteria) this;
} }
public Criteria andTypeEqualTo(Byte value) { public Criteria andTypeEqualTo(String value) {
addCriterion("type =", value, "type"); addCriterion("type =", value, "type");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andTypeNotEqualTo(Byte value) { public Criteria andTypeNotEqualTo(String value) {
addCriterion("type <>", value, "type"); addCriterion("type <>", value, "type");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andTypeGreaterThan(Byte value) { public Criteria andTypeGreaterThan(String value) {
addCriterion("type >", value, "type"); addCriterion("type >", value, "type");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andTypeGreaterThanOrEqualTo(Byte value) { public Criteria andTypeGreaterThanOrEqualTo(String value) {
addCriterion("type >=", value, "type"); addCriterion("type >=", value, "type");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andTypeLessThan(Byte value) { public Criteria andTypeLessThan(String value) {
addCriterion("type <", value, "type"); addCriterion("type <", value, "type");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andTypeLessThanOrEqualTo(Byte value) { public Criteria andTypeLessThanOrEqualTo(String value) {
addCriterion("type <=", value, "type"); addCriterion("type <=", value, "type");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andTypeIn(List<Byte> values) { public Criteria andTypeLike(String value) {
addCriterion("type like", value, "type");
return (Criteria) this;
}
public Criteria andTypeNotLike(String value) {
addCriterion("type not like", value, "type");
return (Criteria) this;
}
public Criteria andTypeIn(List<String> values) {
addCriterion("type in", values, "type"); addCriterion("type in", values, "type");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andTypeNotIn(List<Byte> values) { public Criteria andTypeNotIn(List<String> values) {
addCriterion("type not in", values, "type"); addCriterion("type not in", values, "type");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andTypeBetween(Byte value1, Byte value2) { public Criteria andTypeBetween(String value1, String value2) {
addCriterion("type between", value1, value2, "type"); addCriterion("type between", value1, value2, "type");
return (Criteria) this; return (Criteria) this;
} }
public Criteria andTypeNotBetween(Byte value1, Byte value2) { public Criteria andTypeNotBetween(String value1, String value2) {
addCriterion("type not between", value1, value2, "type"); addCriterion("type not between", value1, value2, "type");
return (Criteria) this; return (Criteria) this;
} }

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

@ -8,8 +8,11 @@ import com.research.system.domain.po.KtsKtGroupMember;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.annotation.Resource;
import java.util.Arrays;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.stream.Collectors;
/** /**
* @Author zzc * @Author zzc
@ -214,7 +217,7 @@ public class GroupVO {
@JsonFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd")
private Date memberBirth; private Date memberBirth;
private Byte type; private String type;
private Byte category; private Byte category;
@ -230,6 +233,8 @@ public class GroupVO {
private Byte memberStatus; private Byte memberStatus;
private Byte readingStatus;
private String createBy; private String createBy;
private Date createTime; private Date createTime;
@ -268,6 +273,60 @@ public class GroupVO {
} }
return 0; return 0;
} }
public List<String> getType() {
if (StrUtil.isNotEmpty(type)) {
return Arrays.stream(type.split(",")).collect(Collectors.toList());
}
return null;
}
public String getTypeName() {
if (StrUtil.isNotEmpty(type)) {
List<String> type1 = getType();
return type1.stream().map(title -> {
if (title.equals("1")) {
return "学生";
} else if (title.equals("2")) {
return "教师";
} else if (title.equals("3")) {
return "其他";
}
return "";
}).collect(Collectors.joining(","));
}
return type;
}
public String getCategoryName() {
if (category != null) {
switch (category) {
case 0:
return "工作人员";
case 1:
return "学生";
default:
return "未知";
}
}
return "未知";
}
public String getReadingStatusName() {
if (readingStatus != null) {
switch (readingStatus) {
case 0:
return "在读硕士";
case 1:
return "在读博士";
case 2:
return "在读博士后";
default:
return "未知";
}
}
return "未知";
}
} }
@Data @Data
@ -328,12 +387,21 @@ public class GroupVO {
@Data @Data
public static class StudentResult { public static class StudentResult {
private Long orgId; private Long orgId;
private String orgName; private String orgName;
@ApiModelProperty("在读人数") @ApiModelProperty("在读人数")
private int zd; private int zd;
@ApiModelProperty("毕业人数") @ApiModelProperty("毕业人数")
private int by; private int by;
}
@Data
public static class Gzryxl {
private Long orgId;
private String orgName;
private int ss;
private int bs;
private int bsh;
} }
@Data @Data
@ -346,7 +414,7 @@ public class GroupVO {
private Long orgId; private Long orgId;
private String orgName; private String orgName;
private int gj;//高级 private int gj;//高级
// private int fg;//副高 // private int fg;//副高
private int zj;//中级 private int zj;//中级
private int cj;//初级 private int cj;//初级
@ -359,7 +427,7 @@ public class GroupVO {
private CjDto cjList; private CjDto cjList;
@Data @Data
public static class GjDto{ public static class GjDto {
@ApiModelProperty("教授") @ApiModelProperty("教授")
private int js; private int js;
@ApiModelProperty("研究员") @ApiModelProperty("研究员")
@ -371,7 +439,7 @@ public class GroupVO {
} }
@Data @Data
public static class FgjDto{ public static class FgjDto {
@ApiModelProperty("副教授") @ApiModelProperty("副教授")
private int fjs; private int fjs;
@ApiModelProperty("副研究员") @ApiModelProperty("副研究员")
@ -383,7 +451,7 @@ public class GroupVO {
} }
@Data @Data
public static class ZjDto{ public static class ZjDto {
@ApiModelProperty("讲师") @ApiModelProperty("讲师")
private int js; private int js;
@ApiModelProperty("主治医师") @ApiModelProperty("主治医师")
@ -393,7 +461,7 @@ public class GroupVO {
} }
@Data @Data
public static class CjDto{ public static class CjDto {
@ApiModelProperty("助教") @ApiModelProperty("助教")
private int zj; private int zj;
@ApiModelProperty("助理研究员") @ApiModelProperty("助理研究员")

12
research-system/src/main/java/com/research/system/domain/vo/MemberAduitVo.java

@ -4,7 +4,10 @@ import cn.hutool.core.util.StrUtil;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.util.Arrays;
import java.util.Date; import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
/** /**
* @Author zzc * @Author zzc
@ -47,7 +50,7 @@ public class MemberAduitVo {
private String title; private String title;
private Byte type; private String type;
private Long userId; private Long userId;
@ -73,6 +76,13 @@ public class MemberAduitVo {
private Date reviewedTime; private Date reviewedTime;
public List<String> getType() {
if (StrUtil.isNotEmpty(type)) {
return Arrays.stream(type.split(",")).collect(Collectors.toList());
}
return null;
}
public String getKtGroupName() { public String getKtGroupName() {
if (StrUtil.isNotEmpty(ktGroupName1)) { if (StrUtil.isNotEmpty(ktGroupName1)) {
return ktGroupName1; return ktGroupName1;

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

@ -44,5 +44,7 @@ public interface KtsGroupDao {
GroupVO.WorkerStatistics.Title.ZjDto queryZjTitleStatistics(@Param("orgId") Long orgId); GroupVO.WorkerStatistics.Title.ZjDto queryZjTitleStatistics(@Param("orgId") Long orgId);
List<GroupVO.Gzryxl> gzryxlStatistics();
List<GroupVO.StudentResult> queryStudentStatistics(GroupDto.Query query); List<GroupVO.StudentResult> queryStudentStatistics(GroupDto.Query query);
} }

4
research-system/src/main/java/com/research/system/service/ExportService.java

@ -1,5 +1,7 @@
package com.research.system.service; package com.research.system.service;
import com.research.system.domain.dto.ExportDto;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
/** /**
@ -9,5 +11,5 @@ import javax.servlet.http.HttpServletResponse;
* @description: * @description:
*/ */
public interface ExportService { public interface ExportService {
void export(HttpServletResponse response); void export(HttpServletResponse response, ExportDto.Query dto);
} }

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

@ -62,5 +62,8 @@ public interface KtsGroupService {
GroupVO.WorkerStatistics workerStatistics(); GroupVO.WorkerStatistics workerStatistics();
//工作人员学历统计
List<GroupVO.Gzryxl> gzryxlStatistics();
List<GroupVO.StudentResult> queryStudentList(GroupDto.Query query); List<GroupVO.StudentResult> queryStudentList(GroupDto.Query query);
} }

257
research-system/src/main/java/com/research/system/service/impl/ExportServiceImpl.java

@ -6,18 +6,17 @@ import cn.hutool.core.io.FileUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.deepoove.poi.XWPFTemplate; import com.deepoove.poi.XWPFTemplate;
import com.deepoove.poi.data.*; import com.deepoove.poi.data.*;
import com.research.common.core.domain.entity.SysUser;
import com.research.common.utils.DateUtils; import com.research.common.utils.DateUtils;
import com.research.common.utils.file.FileUtils; import com.research.common.utils.file.FileUtils;
import com.research.system.domain.dto.ClientPrjProOrgDto; import com.research.system.domain.dto.ClientPrjProOrgDto;
import com.research.system.domain.dto.ExportDto;
import com.research.system.domain.dto.GroupDto; import com.research.system.domain.dto.GroupDto;
import com.research.system.domain.dto.OutcomeDto; import com.research.system.domain.dto.OutcomeDto;
import com.research.system.domain.vo.ClientPrjProjInfoVo; import com.research.system.domain.vo.ClientPrjProjInfoVo;
import com.research.system.domain.vo.GroupVO; import com.research.system.domain.vo.GroupVO;
import com.research.system.domain.vo.OutcomeVo; import com.research.system.domain.vo.OutcomeVo;
import com.research.system.service.CooperatorService; import com.research.system.service.*;
import com.research.system.service.ExportService;
import com.research.system.service.KtsGroupService;
import com.research.system.service.OutcomeService;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.MediaType; import org.springframework.http.MediaType;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -44,15 +43,25 @@ public class ExportServiceImpl implements ExportService {
@Resource @Resource
private CooperatorService cooperatorService; private CooperatorService cooperatorService;
@Value(value = "${research.reportTemplate}")
private String reportTemplate;
@Resource @Resource
private KtsGroupService ktsGroupService; private KtsGroupService ktsGroupService;
@Resource @Resource
private OutcomeService outcomeService; private OutcomeService outcomeService;
@Resource
private ISysUserService sysUserService;
@Value(value = "${research.reportTemplate}")
private String reportTemplate;
@Value(value = "${research.reportGrTemplate}")
private String reportGrTemplate;
@Override @Override
public void export(HttpServletResponse response) { public void export(HttpServletResponse response, ExportDto.Query dto) {
if (dto.getType() == 1) {
exportGr(response, dto);
return;
}
XWPFTemplate template = XWPFTemplate.compile(reportTemplate); XWPFTemplate template = XWPFTemplate.compile(reportTemplate);
HashMap<String, Object> map = new HashMap<>(); HashMap<String, Object> map = new HashMap<>();
List<ClientPrjProjInfoVo.OrgVo> query = cooperatorService.query(new ClientPrjProOrgDto.Query()); List<ClientPrjProjInfoVo.OrgVo> query = cooperatorService.query(new ClientPrjProOrgDto.Query());
@ -262,4 +271,238 @@ public class ExportServiceImpl implements ExportService {
} }
} }
public void exportGr(HttpServletResponse response, ExportDto.Query dto) {
XWPFTemplate template = XWPFTemplate.compile(reportGrTemplate);
HashMap<String, Object> map = new HashMap<>();
SysUser sysUser = sysUserService.selectUserById(dto.getUserId());
if (sysUser == null) {
return;
}
GroupDto.MemberQuery memberQuery = new GroupDto.MemberQuery();
memberQuery.setMemberPhone(sysUser.getPhonenumber());
List<GroupVO.MemberResult> memberResults = ktsGroupService.queryMemberList(memberQuery);
if (CollUtil.isNotEmpty(memberResults)) {
map.put("groupName", memberResults.stream().map(GroupVO.MemberResult::getKtGroupName).collect(Collectors.joining(",")));
map.put("orgName", memberResults.stream().map(GroupVO.MemberResult::getProjOrgName).collect(Collectors.joining(",")));
map.put("title", memberResults.stream().map(GroupVO.MemberResult::getTitleName).collect(Collectors.joining(",")));
map.put("userType", memberResults.stream().map(GroupVO.MemberResult::getTypeName).collect(Collectors.joining(",")));
map.put("rxTime", memberResults.get(0).getEnrollmentTime());
map.put("byTime", memberResults.get(0).getGraduationTime());
map.put("readingStatus", memberResults.get(0).getReadingStatusName());
map.put("type", memberResults.get(0).getCategoryName());
}
map.put("eMail", sysUser.getEmail());
map.put("name", sysUser.getNickName());
map.put("phone", sysUser.getUserName());
ClientPrjProOrgDto.Query query1 = new ClientPrjProOrgDto.Query();
query1.setUsername(sysUser.getUserName());
List<ClientPrjProjInfoVo.OrgVo> query = cooperatorService.query(query1);
//合作单位
if (CollUtil.isNotEmpty(query)) {
TextRenderData text1 = Texts.of("单位名称").bold().fontSize(12).create();
TextRenderData text2 = Texts.of("单位类型").bold().fontSize(12).create();
TextRenderData text3 = Texts.of("负责人").bold().fontSize(12).create();
RowRenderData headerRow = Rows.of(text1, text2, text3).center().create();
Tables.TableBuilder of = Tables.of(headerRow);
for (ClientPrjProjInfoVo.OrgVo orgVo : query) {
RowRenderData rowRenderData = Rows.of(
orgVo.getOrgName(),
orgVo.getCategory() == null ? null : orgVo.getCategory() == 0 ? "申报单位" : "合作单位",
orgVo.getOrgLeader()
).center().create();
of.addRow(rowRenderData).center();
}
TableRenderData tableData = of
.create();
map.put("table0", tableData);
}
//项目课题
List<GroupVO.Result> groupList = ktsGroupService.queryGroupList(new GroupDto.Query());
if (CollUtil.isNotEmpty(groupList)) {
TextRenderData text1 = Texts.of("单位名称").bold().fontSize(12).create();
TextRenderData text2 = Texts.of("课题").bold().fontSize(12).create();
TextRenderData text3 = Texts.of("负责人").bold().fontSize(12).create();
RowRenderData headerRow = Rows.of(text1, text2, text3).center().create();
Tables.TableBuilder of = Tables.of(headerRow);
for (GroupVO.Result result : groupList) {
RowRenderData rowRenderData = Rows.of(
result.getProjOrgName(),
result.getKtGroupName(),
result.getName()
).center().create();
of.addRow(rowRenderData).center();
}
TableRenderData tableData = of
.create();
map.put("table1", tableData);
}
//项目成果
OutcomeDto.Query query2 = new OutcomeDto.Query();
query2.setUsername(sysUser.getUserName());
List<OutcomeVo.Result> outcomeList = outcomeService.queryList(query2);
if (CollUtil.isNotEmpty(outcomeList)) {
//学术论文
Map<Long, List<OutcomeVo.Result>> outcomeMap = outcomeList.stream().collect(Collectors.groupingBy(OutcomeVo.Result::getCategoryId1));
List<OutcomeVo.Result> results = outcomeMap.get(1L);
if (CollUtil.isNotEmpty(results)) {
TextRenderData text1 = Texts.of("单位名称").bold().fontSize(12).create();
TextRenderData text2 = Texts.of("标题").bold().fontSize(12).create();
TextRenderData text3 = Texts.of("作者").bold().fontSize(12).create();
TextRenderData text4 = Texts.of("类型").bold().fontSize(12).create();
TextRenderData text5 = Texts.of("刊物").bold().fontSize(12).create();
TextRenderData text6 = Texts.of("收录类别").bold().fontSize(12).create();
RowRenderData headerRow = Rows.of(text1, text2, text3, text4, text5, text6).center().create();
Tables.TableBuilder of = Tables.of(headerRow);
for (OutcomeVo.Result result : results) {
RowRenderData rowRenderData = Rows.of(
result.getProjOrgName(),
result.getTitle(),
result.getAuthors(),
result.getAchType() == null ? null : result.getAchType() == 0 ? "期刊论文" : result.getAchType() == 1 ? "会议论文" : result.getAchType() == 2 ? "报刊文章" : result.getAchType() == 3 ? "报纸文章" : "学位论文",
result.getSource(),
result.getCategoryId2() == null ? null : result.getCategoryId2() == 2 ? "SCI" : result.getCategoryId2() == 3 ? "中文期刊" : "其他"
).center().create();
of.addRow(rowRenderData).center();
}
TableRenderData tableData = of
.create();
map.put("table2", tableData);
}
List<OutcomeVo.Result> results1 = outcomeMap.get(11L);
if (CollUtil.isNotEmpty(results1)) {
TextRenderData text1 = Texts.of("单位名称").bold().fontSize(12).create();
TextRenderData text2 = Texts.of("专利名称").bold().fontSize(12).create();
TextRenderData text3 = Texts.of("专利号").bold().fontSize(12).create();
TextRenderData text4 = Texts.of("专利类型").bold().fontSize(12).create();
TextRenderData text5 = Texts.of("专利权人").bold().fontSize(12).create();
TextRenderData text6 = Texts.of("专利内容").bold().fontSize(12).create();
RowRenderData headerRow = Rows.of(text1, text2, text3, text4, text5, text6).center().create();
Tables.TableBuilder of = Tables.of(headerRow);
for (OutcomeVo.Result result : results1) {
RowRenderData rowRenderData = Rows.of(
result.getProjOrgName(),
result.getTitle(),
result.getNo(),
result.getAchType() == null ? null : result.getAchType() == 0 ? "发明专利" : result.getAchType() == 1 ? "实用新型专利" : "外观设计专利",
result.getAuthors(),
result.getRemark()
).center().create();
of.addRow(rowRenderData).center();
}
TableRenderData tableData = of
.create();
map.put("table3", tableData);
}
//学术交流
List<OutcomeVo.Result> results2 = outcomeMap.get(71L);
if (CollUtil.isNotEmpty(results2)) {
TextRenderData text1 = Texts.of("标题").bold().fontSize(12).create();
TextRenderData text2 = Texts.of("时间").bold().fontSize(12).create();
TextRenderData text3 = Texts.of("地点").bold().fontSize(12).create();
TextRenderData text4 = Texts.of("参与人").bold().fontSize(12).create();
TextRenderData text5 = Texts.of("类型").bold().fontSize(12).create();
TextRenderData text6 = Texts.of("内容").bold().fontSize(12).create();
RowRenderData headerRow = Rows.of(text1, text2, text3, text4, text5, text6).center().create();
Tables.TableBuilder of = Tables.of(headerRow);
for (OutcomeVo.Result result : results2) {
RowRenderData rowRenderData = Rows.of(
result.getTitle(),
DateUtil.format(result.getPublishDate(), "yyyy-MM-dd"),
result.getPlace(),
result.getAuthors(),
result.getAchType() == null ? null : result.getAchType() == 0 ? "学术讲座" : result.getAchType() == 1 ? "学术会议" : "外出进修",
result.getRemark()
).center().create();
of.addRow(rowRenderData).center();
}
TableRenderData tableData = of
.create();
map.put("table4", tableData);
}
//高层次科技人才
List<OutcomeVo.Result> results3 = outcomeMap.get(5L);
if (CollUtil.isNotEmpty(results3)) {
Map<Long, List<OutcomeVo.Result>> collect = results3.stream().collect(Collectors.groupingBy(OutcomeVo.Result::getCategoryId2));
if (CollUtil.isNotEmpty(collect.get(6L))) {
TextRenderData text1 = Texts.of("序号").bold().fontSize(12).create();
TextRenderData text2 = Texts.of("姓名").bold().fontSize(12).create();
TextRenderData text3 = Texts.of("性别").bold().fontSize(12).create();
TextRenderData text4 = Texts.of("年龄").bold().fontSize(12).create();
TextRenderData text5 = Texts.of("职称").bold().fontSize(12).create();
TextRenderData text6 = Texts.of("入选人才计划或项目").bold().fontSize(12).create();
RowRenderData headerRow = Rows.of(text1, text2, text3, text4, text5, text6).center().create();
Tables.TableBuilder of = Tables.of(headerRow);
int i = 0;
for (OutcomeVo.Result result : collect.get(6L)) {
i++;
RowRenderData rowRenderData = Rows.of(
i + "",
result.getName(),
StrUtil.isNotEmpty(result.getSex()) ? "未知" : "0".equals(result.getSex()) ? "女" : "男",
result.getAge() + "",
result.getTitle(),
result.getProjects()
).center().create();
of.addRow(rowRenderData).center();
}
TableRenderData tableData = of
.create();
map.put("table5", tableData);
}
if (CollUtil.isNotEmpty(collect.get(7L))) {
TextRenderData text1 = Texts.of("序号").bold().fontSize(12).create();
TextRenderData text2 = Texts.of("姓名").bold().fontSize(12).create();
TextRenderData text3 = Texts.of("性别").bold().fontSize(12).create();
TextRenderData text4 = Texts.of("年龄").bold().fontSize(12).create();
TextRenderData text5 = Texts.of("职称晋升").bold().fontSize(12).create();
TextRenderData text6 = Texts.of("入选人才计划或项目").bold().fontSize(12).create();
RowRenderData headerRow = Rows.of(text1, text2, text3, text4, text5, text6).center().create();
Tables.TableBuilder of = Tables.of(headerRow);
int i = 0;
for (OutcomeVo.Result result : collect.get(6L)) {
i++;
RowRenderData rowRenderData = Rows.of(
i + "",
result.getName(),
StrUtil.isNotEmpty(result.getSex()) ? "未知" : "0".equals(result.getSex()) ? "女" : "男",
result.getAge() + "",
result.getTitle(),
result.getProjects()
).center().create();
of.addRow(rowRenderData).center();
}
TableRenderData tableData = of
.create();
map.put("table6", tableData);
}
}
}
try {
String fileName = "个人报告.docx";
// String path = "C:/Users/zzc16/Desktop/项目运行报告.docx";
String path = "D:/Projects/research/server/profile/项目运行报告.docx";
template.render(map);
//以文件形式输出
template.writeAndClose(Files.newOutputStream(Paths.get(path)));
//3.写出到客户端
response.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE);
FileUtils.setAttachmentResponseHeader(response, fileName);
FileUtils.writeBytes(path, response.getOutputStream());
} catch (Exception e) {
e.printStackTrace(); // 输出详细的异常信息
}
}
} }

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

@ -106,11 +106,26 @@ public class KtsGroupServiceImpl implements KtsGroupService {
for (GroupVO.Result result1 : childrenList) { for (GroupVO.Result result1 : childrenList) {
result1.setSort(i); result1.setSort(i);
i++; i++;
List<GroupVO.Result> childrenList1 = result.getChildrenList();
if (CollUtil.isNotEmpty(childrenList1)) {
int a = 1;
for (GroupVO.Result result2 : childrenList1) {
result2.setSort(a);
a++;
}
}
} }
} }
} }
return results;
} else {
int i = 1;
for (GroupVO.Result result : results) {
result.setSort(i);
i++;
}
} }
return results; return groupList;
} }
return new ArrayList<>(); return new ArrayList<>();
} }
@ -552,6 +567,11 @@ public class KtsGroupServiceImpl implements KtsGroupService {
return workerStatistics; return workerStatistics;
} }
@Override
public List<GroupVO.Gzryxl> gzryxlStatistics() {
return ktsGroupDao.gzryxlStatistics();
}
@Override @Override
public List<GroupVO.StudentResult> queryStudentList(GroupDto.Query query) { public List<GroupVO.StudentResult> queryStudentList(GroupDto.Query query) {
return ktsGroupDao.queryStudentStatistics(query); return ktsGroupDao.queryStudentStatistics(query);

10
research-system/src/main/java/com/research/system/service/impl/MemberAduitServiceImpl.java

@ -17,10 +17,7 @@ import com.research.system.domain.vo.MemberAduitVo;
import com.research.system.persist.dao.MemberAduitDao; import com.research.system.persist.dao.MemberAduitDao;
import com.research.system.persist.mapper.KtsKtGroupMemberAduitMapper; import com.research.system.persist.mapper.KtsKtGroupMemberAduitMapper;
import com.research.system.persist.mapper.SrvMessageMapper; import com.research.system.persist.mapper.SrvMessageMapper;
import com.research.system.service.ISysUserService; import com.research.system.service.*;
import com.research.system.service.KtsGroupService;
import com.research.system.service.MemberAduitService;
import com.research.system.service.TmsTenantUserService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
@ -54,6 +51,8 @@ public class MemberAduitServiceImpl implements MemberAduitService {
private KtsGroupService ktsGroupService; private KtsGroupService ktsGroupService;
@Resource @Resource
private TmsTenantUserService tmsTenantUserService; private TmsTenantUserService tmsTenantUserService;
@Resource
private ISysDictDataService sysDictDataService;
@Override @Override
public void register(MemberAduitDto.Register dto) { public void register(MemberAduitDto.Register dto) {
@ -157,6 +156,7 @@ public class MemberAduitServiceImpl implements MemberAduitService {
@Override @Override
public List<MemberAduitVo.Result> query(MemberAduitDto.Query dto) { public List<MemberAduitVo.Result> query(MemberAduitDto.Query dto) {
return memberAduitDao.query(dto, SecurityUtils.getUserId()); List<MemberAduitVo.Result> query = memberAduitDao.query(dto, SecurityUtils.getUserId());
return query;
} }
} }

1
research-system/src/main/resources/mapper/dao/ClientPrjProOrgDao.xml

@ -60,6 +60,7 @@
<if test="dto.orgLeaderPhone != null and dto.orgLeaderPhone != ''"> <if test="dto.orgLeaderPhone != null and dto.orgLeaderPhone != ''">
and o.org_leader_phone like concat('%',#{dto.orgLeaderPhone},'%') and o.org_leader_phone like concat('%',#{dto.orgLeaderPhone},'%')
</if> </if>
</where> </where>
</select> </select>

4
research-system/src/main/resources/mapper/dao/FundingDao.xml

@ -32,8 +32,8 @@
kts_kt_group g on r.kt_group_id = g.id kts_kt_group g on r.kt_group_id = g.id
where where
r.del_flag = 0 r.del_flag = 0
<if test="dto.projOrgid != null"> <if test="dto.projOrgId != null">
and r.proj_org_id = #{dto.projOrgid} and r.proj_org_id = #{dto.projOrgId}
</if> </if>
<if test="dto.ktGroupId != null"> <if test="dto.ktGroupId != null">
and r.kt_group_id = #{dto.ktGroupId} and r.kt_group_id = #{dto.ktGroupId}

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

@ -65,6 +65,7 @@
m.member_email as memberEmail, m.member_email as memberEmail,
m.member_gender as memberGender, m.member_gender as memberGender,
m.member_birth as memberBirth, m.member_birth as memberBirth,
m.reading_status as readingStatus,
m.type, m.type,
m.category, m.category,
m.qualification, m.qualification,
@ -93,6 +94,9 @@
left join sys_user u on u.user_id = m.user_id left join sys_user u on u.user_id = m.user_id
where 1=1 where 1=1
and m.del_flag = 0 and m.del_flag = 0
<if test="dto.projOrgId != null">
and g.proj_org_id = #{dto.projOrgId}
</if>
<if test="dto.ktGroupId != null"> <if test="dto.ktGroupId != null">
and m.kt_group_id = #{dto.ktGroupId} and m.kt_group_id = #{dto.ktGroupId}
</if> </if>
@ -103,7 +107,7 @@
and m.member_phone like concat('%',#{dto.memberPhone},'%') and m.member_phone like concat('%',#{dto.memberPhone},'%')
</if> </if>
<if test="dto.type != null"> <if test="dto.type != null">
and m.type = #{dto.type} and m.type like concat('%',#{dto.type},'%')
</if> </if>
<if test="dto.auditStatus != null"> <if test="dto.auditStatus != null">
and m.audit_status = #{dto.auditStatus} and m.audit_status = #{dto.auditStatus}
@ -289,6 +293,20 @@
group by o.id group by o.id
</select> </select>
<select id="gzryxlStatistics" resultType="com.research.system.domain.vo.GroupVO$Gzryxl">
select o.id as orgId,
o.org_name as orgName,
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 `bs`,
SUM(CASE WHEN m.qualification = 7 THEN 1 ELSE 0 END) AS `bsh`
from prj_proj_org o
left join
kts_kt_group g on g.proj_org_id = o.id and g.del_flag = 0
LEFT JOIN kts_kt_group_member m on m.kt_group_id = g.id
where o.del_flag = 0
group by o.id
</select>
<select id="queryStudentStatistics" resultType="com.research.system.domain.vo.GroupVO$StudentResult"> <select id="queryStudentStatistics" resultType="com.research.system.domain.vo.GroupVO$StudentResult">
select o.id as orgId, select o.id as orgId,
o.org_name as orgName, o.org_name as orgName,

16
research-system/src/main/resources/mapper/dao/MemberAduitDao.xml

@ -17,9 +17,6 @@
kts_kt_group g kts_kt_group g
LEFT JOIN LEFT JOIN
kts_kt_group_member m on m.kt_group_id = g.id kts_kt_group_member m on m.kt_group_id = g.id
WHERE
g.proj_org_id = #{projOrgId}
) )
and r.role_id = #{roleId} and r.role_id = #{roleId}
</select> </select>
@ -67,10 +64,12 @@
left join sys_user u on u.user_id = a.reviewed_persion left join sys_user u on u.user_id = a.reviewed_persion
left join kts_kt_group g1 on g1.id = a.parent_kt_id left join kts_kt_group g1 on g1.id = a.parent_kt_id
WHERE WHERE
a.del_flag = 0 and a.del_flag = 0
a.reviewer = #{userId} <if test="userId != 1">
<if test="dto.status != null"> and a.reviewer = #{userId}
and a.status = #{dto.status} </if>
<if test="dto.memberStatus != null">
and a.status = #{dto.memberStatus}
</if> </if>
<if test="dto.username != null and dto.username != ''"> <if test="dto.username != null and dto.username != ''">
and a.username like concat('%', #{dto.username}, '%') and a.username like concat('%', #{dto.username}, '%')
@ -89,6 +88,9 @@
</if> </if>
<if test="dto.ktGroupId != null"> <if test="dto.ktGroupId != null">
and a.kt_group_id = #{dto.ktGroupId} and a.kt_group_id = #{dto.ktGroupId}
</if>
<if test="dto.category != null and dto.category != ''">
and a.category like concat('%', #{dto.category}, '%')
</if> </if>
order by a.id desc order by a.id desc
</select> </select>

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

@ -82,6 +82,9 @@
<if test="dto.achType != null"> <if test="dto.achType != null">
AND a.ach_type = #{dto.achType} AND a.ach_type = #{dto.achType}
</if> </if>
<if test="dto.username != null and dto.username != ''">
AND a.create_by = #{dto.username}
</if>
</select> </select>
<!-- 查询树形结构 --> <!-- 查询树形结构 -->

14
research-system/src/main/resources/mapper/system/KtsKtGroupMemberAduitMapper.xml

@ -17,7 +17,7 @@
<result column="proj_org_id" jdbcType="BIGINT" property="projOrgId" /> <result column="proj_org_id" jdbcType="BIGINT" property="projOrgId" />
<result column="role_id_list" jdbcType="VARCHAR" property="roleIdList" /> <result column="role_id_list" jdbcType="VARCHAR" property="roleIdList" />
<result column="title" jdbcType="VARCHAR" property="title" /> <result column="title" jdbcType="VARCHAR" property="title" />
<result column="type" jdbcType="TINYINT" property="type" /> <result column="type" jdbcType="VARCHAR" property="type" />
<result column="user_id" jdbcType="BIGINT" property="userId" /> <result column="user_id" jdbcType="BIGINT" property="userId" />
<result column="username" jdbcType="VARCHAR" property="username" /> <result column="username" jdbcType="VARCHAR" property="username" />
<result column="del_flag" jdbcType="TINYINT" property="delFlag" /> <result column="del_flag" jdbcType="TINYINT" property="delFlag" />
@ -141,7 +141,7 @@
#{memberEmail,jdbcType=VARCHAR}, #{memberGender,jdbcType=TINYINT}, #{memberName,jdbcType=VARCHAR}, #{memberEmail,jdbcType=VARCHAR}, #{memberGender,jdbcType=TINYINT}, #{memberName,jdbcType=VARCHAR},
#{memberPhone,jdbcType=VARCHAR}, #{parentMemberId,jdbcType=BIGINT}, #{password,jdbcType=VARCHAR}, #{memberPhone,jdbcType=VARCHAR}, #{parentMemberId,jdbcType=BIGINT}, #{password,jdbcType=VARCHAR},
#{projOrgId,jdbcType=BIGINT}, #{roleIdList,jdbcType=VARCHAR}, #{title,jdbcType=VARCHAR}, #{projOrgId,jdbcType=BIGINT}, #{roleIdList,jdbcType=VARCHAR}, #{title,jdbcType=VARCHAR},
#{type,jdbcType=TINYINT}, #{userId,jdbcType=BIGINT}, #{username,jdbcType=VARCHAR}, #{type,jdbcType=VARCHAR}, #{userId,jdbcType=BIGINT}, #{username,jdbcType=VARCHAR},
#{delFlag,jdbcType=TINYINT}, #{createBy,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, #{delFlag,jdbcType=TINYINT}, #{createBy,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP},
#{updateBy,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP}, #{remark,jdbcType=VARCHAR}, #{updateBy,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP}, #{remark,jdbcType=VARCHAR},
#{step,jdbcType=TINYINT}, #{status,jdbcType=TINYINT}, #{reviewer,jdbcType=VARCHAR}, #{step,jdbcType=TINYINT}, #{status,jdbcType=TINYINT}, #{reviewer,jdbcType=VARCHAR},
@ -295,7 +295,7 @@
#{title,jdbcType=VARCHAR}, #{title,jdbcType=VARCHAR},
</if> </if>
<if test="type != null"> <if test="type != null">
#{type,jdbcType=TINYINT}, #{type,jdbcType=VARCHAR},
</if> </if>
<if test="userId != null"> <if test="userId != null">
#{userId,jdbcType=BIGINT}, #{userId,jdbcType=BIGINT},
@ -402,7 +402,7 @@
title = #{record.title,jdbcType=VARCHAR}, title = #{record.title,jdbcType=VARCHAR},
</if> </if>
<if test="record.type != null"> <if test="record.type != null">
type = #{record.type,jdbcType=TINYINT}, type = #{record.type,jdbcType=VARCHAR},
</if> </if>
<if test="record.userId != null"> <if test="record.userId != null">
user_id = #{record.userId,jdbcType=BIGINT}, user_id = #{record.userId,jdbcType=BIGINT},
@ -474,7 +474,7 @@
proj_org_id = #{record.projOrgId,jdbcType=BIGINT}, proj_org_id = #{record.projOrgId,jdbcType=BIGINT},
role_id_list = #{record.roleIdList,jdbcType=VARCHAR}, role_id_list = #{record.roleIdList,jdbcType=VARCHAR},
title = #{record.title,jdbcType=VARCHAR}, title = #{record.title,jdbcType=VARCHAR},
type = #{record.type,jdbcType=TINYINT}, type = #{record.type,jdbcType=VARCHAR},
user_id = #{record.userId,jdbcType=BIGINT}, user_id = #{record.userId,jdbcType=BIGINT},
username = #{record.username,jdbcType=VARCHAR}, username = #{record.username,jdbcType=VARCHAR},
del_flag = #{record.delFlag,jdbcType=TINYINT}, del_flag = #{record.delFlag,jdbcType=TINYINT},
@ -541,7 +541,7 @@
title = #{title,jdbcType=VARCHAR}, title = #{title,jdbcType=VARCHAR},
</if> </if>
<if test="type != null"> <if test="type != null">
type = #{type,jdbcType=TINYINT}, type = #{type,jdbcType=VARCHAR},
</if> </if>
<if test="userId != null"> <if test="userId != null">
user_id = #{userId,jdbcType=BIGINT}, user_id = #{userId,jdbcType=BIGINT},
@ -610,7 +610,7 @@
proj_org_id = #{projOrgId,jdbcType=BIGINT}, proj_org_id = #{projOrgId,jdbcType=BIGINT},
role_id_list = #{roleIdList,jdbcType=VARCHAR}, role_id_list = #{roleIdList,jdbcType=VARCHAR},
title = #{title,jdbcType=VARCHAR}, title = #{title,jdbcType=VARCHAR},
type = #{type,jdbcType=TINYINT}, type = #{type,jdbcType=VARCHAR},
user_id = #{userId,jdbcType=BIGINT}, user_id = #{userId,jdbcType=BIGINT},
username = #{username,jdbcType=VARCHAR}, username = #{username,jdbcType=VARCHAR},
del_flag = #{delFlag,jdbcType=TINYINT}, del_flag = #{delFlag,jdbcType=TINYINT},

14
research-system/src/main/resources/mapper/system/KtsKtGroupMemberMapper.xml

@ -11,7 +11,7 @@
<result column="member_email" jdbcType="VARCHAR" property="memberEmail" /> <result column="member_email" jdbcType="VARCHAR" property="memberEmail" />
<result column="member_gender" jdbcType="TINYINT" property="memberGender" /> <result column="member_gender" jdbcType="TINYINT" property="memberGender" />
<result column="member_birth" jdbcType="DATE" property="memberBirth" /> <result column="member_birth" jdbcType="DATE" property="memberBirth" />
<result column="type" jdbcType="TINYINT" property="type" /> <result column="type" jdbcType="VARCHAR" property="type" />
<result column="category" jdbcType="TINYINT" property="category" /> <result column="category" jdbcType="TINYINT" property="category" />
<result column="qualification" jdbcType="INTEGER" property="qualification" /> <result column="qualification" jdbcType="INTEGER" property="qualification" />
<result column="title" jdbcType="VARCHAR" property="title" /> <result column="title" jdbcType="VARCHAR" property="title" />
@ -130,7 +130,7 @@
values (#{id,jdbcType=BIGINT}, #{userId,jdbcType=BIGINT}, #{ktGroupId,jdbcType=BIGINT}, values (#{id,jdbcType=BIGINT}, #{userId,jdbcType=BIGINT}, #{ktGroupId,jdbcType=BIGINT},
#{parentMemberId,jdbcType=VARCHAR}, #{memberName,jdbcType=VARCHAR}, #{memberPhone,jdbcType=VARCHAR}, #{parentMemberId,jdbcType=VARCHAR}, #{memberName,jdbcType=VARCHAR}, #{memberPhone,jdbcType=VARCHAR},
#{memberEmail,jdbcType=VARCHAR}, #{memberGender,jdbcType=TINYINT}, #{memberBirth,jdbcType=DATE}, #{memberEmail,jdbcType=VARCHAR}, #{memberGender,jdbcType=TINYINT}, #{memberBirth,jdbcType=DATE},
#{type,jdbcType=TINYINT}, #{category,jdbcType=TINYINT}, #{qualification,jdbcType=INTEGER}, #{type,jdbcType=VARCHAR}, #{category,jdbcType=TINYINT}, #{qualification,jdbcType=INTEGER},
#{title,jdbcType=VARCHAR}, #{sort,jdbcType=INTEGER}, #{intro,jdbcType=VARCHAR}, #{title,jdbcType=VARCHAR}, #{sort,jdbcType=INTEGER}, #{intro,jdbcType=VARCHAR},
#{auditStatus,jdbcType=TINYINT}, #{memberStatus,jdbcType=TINYINT}, #{delFlag,jdbcType=TINYINT}, #{auditStatus,jdbcType=TINYINT}, #{memberStatus,jdbcType=TINYINT}, #{delFlag,jdbcType=TINYINT},
#{createBy,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, #{updateBy,jdbcType=VARCHAR}, #{createBy,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, #{updateBy,jdbcType=VARCHAR},
@ -248,7 +248,7 @@
#{memberBirth,jdbcType=DATE}, #{memberBirth,jdbcType=DATE},
</if> </if>
<if test="type != null"> <if test="type != null">
#{type,jdbcType=TINYINT}, #{type,jdbcType=VARCHAR},
</if> </if>
<if test="category != null"> <if test="category != null">
#{category,jdbcType=TINYINT}, #{category,jdbcType=TINYINT},
@ -337,7 +337,7 @@
member_birth = #{record.memberBirth,jdbcType=DATE}, member_birth = #{record.memberBirth,jdbcType=DATE},
</if> </if>
<if test="record.type != null"> <if test="record.type != null">
type = #{record.type,jdbcType=TINYINT}, type = #{record.type,jdbcType=VARCHAR},
</if> </if>
<if test="record.category != null"> <if test="record.category != null">
category = #{record.category,jdbcType=TINYINT}, category = #{record.category,jdbcType=TINYINT},
@ -403,7 +403,7 @@
member_email = #{record.memberEmail,jdbcType=VARCHAR}, member_email = #{record.memberEmail,jdbcType=VARCHAR},
member_gender = #{record.memberGender,jdbcType=TINYINT}, member_gender = #{record.memberGender,jdbcType=TINYINT},
member_birth = #{record.memberBirth,jdbcType=DATE}, member_birth = #{record.memberBirth,jdbcType=DATE},
type = #{record.type,jdbcType=TINYINT}, type = #{record.type,jdbcType=VARCHAR},
category = #{record.category,jdbcType=TINYINT}, category = #{record.category,jdbcType=TINYINT},
qualification = #{record.qualification,jdbcType=INTEGER}, qualification = #{record.qualification,jdbcType=INTEGER},
title = #{record.title,jdbcType=VARCHAR}, title = #{record.title,jdbcType=VARCHAR},
@ -452,7 +452,7 @@
member_birth = #{memberBirth,jdbcType=DATE}, member_birth = #{memberBirth,jdbcType=DATE},
</if> </if>
<if test="type != null"> <if test="type != null">
type = #{type,jdbcType=TINYINT}, type = #{type,jdbcType=VARCHAR},
</if> </if>
<if test="category != null"> <if test="category != null">
category = #{category,jdbcType=TINYINT}, category = #{category,jdbcType=TINYINT},
@ -515,7 +515,7 @@
member_email = #{memberEmail,jdbcType=VARCHAR}, member_email = #{memberEmail,jdbcType=VARCHAR},
member_gender = #{memberGender,jdbcType=TINYINT}, member_gender = #{memberGender,jdbcType=TINYINT},
member_birth = #{memberBirth,jdbcType=DATE}, member_birth = #{memberBirth,jdbcType=DATE},
type = #{type,jdbcType=TINYINT}, type = #{type,jdbcType=VARCHAR},
category = #{category,jdbcType=TINYINT}, category = #{category,jdbcType=TINYINT},
qualification = #{qualification,jdbcType=INTEGER}, qualification = #{qualification,jdbcType=INTEGER},
title = #{title,jdbcType=VARCHAR}, title = #{title,jdbcType=VARCHAR},

Loading…
Cancel
Save