Browse Source

Merge branch 'pt' of dd.tall.wiki:ccsens_wiki/ccsenscloud into pt

recovery
zhizhi wu 4 years ago
parent
commit
6c91038774
  1. 84
      mt/src/main/java/com/ccsens/mt/bean/po/CompeteStartOrder.java
  2. 412
      mt/src/main/java/com/ccsens/mt/bean/po/CompeteStartOrderExample.java
  3. 2
      mt/src/main/java/com/ccsens/mt/bean/vo/CompeteVo.java
  4. 3
      mt/src/main/java/com/ccsens/mt/bean/vo/TableVo.java
  5. 4
      mt/src/main/java/com/ccsens/mt/persist/dao/CompeteScoreDao.java
  6. 144
      mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java
  7. 262
      mt/src/main/java/com/ccsens/mt/service/ExcelService.java
  8. 4
      mt/src/main/resources/druid-dev.yml
  9. 16
      mt/src/main/resources/mapper_dao/CompetePlayerDao.xml
  10. 52
      mt/src/main/resources/mapper_dao/CompeteProjectDao.xml
  11. 39
      mt/src/main/resources/mapper_dao/CompeteScoreDao.xml
  12. 138
      mt/src/main/resources/mapper_raw/CompeteStartOrderMapper.xml
  13. 7
      tall/src/main/java/com/ccsens/tall/bean/dto/ProjectDto.java
  14. 12
      tall/src/main/java/com/ccsens/tall/bean/dto/TaskDto.java
  15. 33
      tall/src/main/java/com/ccsens/tall/bean/po/ProTaskDetail.java
  16. 180
      tall/src/main/java/com/ccsens/tall/bean/po/ProTaskDetailExample.java
  17. 9
      tall/src/main/java/com/ccsens/tall/persist/dao/ProMemberRoleShowDao.java
  18. 16
      tall/src/main/java/com/ccsens/tall/service/IProjectService.java
  19. 39
      tall/src/main/java/com/ccsens/tall/service/ProMemberService.java
  20. 3
      tall/src/main/java/com/ccsens/tall/service/ProRoleService.java
  21. 27
      tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java
  22. 265
      tall/src/main/java/com/ccsens/tall/service/ProjectService.java
  23. 3
      tall/src/main/java/com/ccsens/tall/service/TaskSubTimeService.java
  24. 15
      tall/src/main/java/com/ccsens/tall/web/DebugController.java
  25. 27
      tall/src/main/java/com/ccsens/tall/web/ProjectController.java
  26. 8
      tall/src/main/java/com/ccsens/tall/web/TaskController.java
  27. 6
      tall/src/main/resources/application-dev.yml
  28. 10
      tall/src/main/resources/mapper_dao/TaskSubTimeDao.xml
  29. 58
      tall/src/main/resources/mapper_raw/ProTaskDetailMapper.xml
  30. 1
      util/src/main/java/com/ccsens/util/CodeEnum.java

84
mt/src/main/java/com/ccsens/mt/bean/po/CompeteStartOrder.java

@ -12,25 +12,25 @@ public class CompeteStartOrder implements Serializable {
private Byte team;
private Byte competeOrder;
private Integer competeOrder;
private Byte site;
private Date createdAt;
private Date updatedAt;
private Byte recStatus;
private Long taskId;
private Long startTime;
private Long endTime;
private Byte waiver;
private String remark;
private Byte waiver;
private Date createdAt;
private Date updatedAt;
private Byte recStatus;
private static final long serialVersionUID = 1L;
@ -66,11 +66,11 @@ public class CompeteStartOrder implements Serializable {
this.team = team;
}
public Byte getCompeteOrder() {
public Integer getCompeteOrder() {
return competeOrder;
}
public void setCompeteOrder(Byte competeOrder) {
public void setCompeteOrder(Integer competeOrder) {
this.competeOrder = competeOrder;
}
@ -82,30 +82,6 @@ public class CompeteStartOrder implements Serializable {
this.site = site;
}
public Date getCreatedAt() {
return createdAt;
}
public void setCreatedAt(Date createdAt) {
this.createdAt = createdAt;
}
public Date getUpdatedAt() {
return updatedAt;
}
public void setUpdatedAt(Date updatedAt) {
this.updatedAt = updatedAt;
}
public Byte getRecStatus() {
return recStatus;
}
public void setRecStatus(Byte recStatus) {
this.recStatus = recStatus;
}
public Long getTaskId() {
return taskId;
}
@ -130,6 +106,14 @@ public class CompeteStartOrder implements Serializable {
this.endTime = endTime;
}
public Byte getWaiver() {
return waiver;
}
public void setWaiver(Byte waiver) {
this.waiver = waiver;
}
public String getRemark() {
return remark;
}
@ -138,12 +122,28 @@ public class CompeteStartOrder implements Serializable {
this.remark = remark == null ? null : remark.trim();
}
public Byte getWaiver() {
return waiver;
public Date getCreatedAt() {
return createdAt;
}
public void setWaiver(Byte waiver) {
this.waiver = waiver;
public void setCreatedAt(Date createdAt) {
this.createdAt = createdAt;
}
public Date getUpdatedAt() {
return updatedAt;
}
public void setUpdatedAt(Date updatedAt) {
this.updatedAt = updatedAt;
}
public Byte getRecStatus() {
return recStatus;
}
public void setRecStatus(Byte recStatus) {
this.recStatus = recStatus;
}
@Override
@ -158,14 +158,14 @@ public class CompeteStartOrder implements Serializable {
sb.append(", team=").append(team);
sb.append(", competeOrder=").append(competeOrder);
sb.append(", site=").append(site);
sb.append(", createdAt=").append(createdAt);
sb.append(", updatedAt=").append(updatedAt);
sb.append(", recStatus=").append(recStatus);
sb.append(", taskId=").append(taskId);
sb.append(", startTime=").append(startTime);
sb.append(", endTime=").append(endTime);
sb.append(", remark=").append(remark);
sb.append(", waiver=").append(waiver);
sb.append(", remark=").append(remark);
sb.append(", createdAt=").append(createdAt);
sb.append(", updatedAt=").append(updatedAt);
sb.append(", recStatus=").append(recStatus);
sb.append("]");
return sb.toString();
}

412
mt/src/main/java/com/ccsens/mt/bean/po/CompeteStartOrderExample.java

@ -355,52 +355,52 @@ public class CompeteStartOrderExample {
return (Criteria) this;
}
public Criteria andCompeteOrderEqualTo(Byte value) {
public Criteria andCompeteOrderEqualTo(Integer value) {
addCriterion("compete_order =", value, "competeOrder");
return (Criteria) this;
}
public Criteria andCompeteOrderNotEqualTo(Byte value) {
public Criteria andCompeteOrderNotEqualTo(Integer value) {
addCriterion("compete_order <>", value, "competeOrder");
return (Criteria) this;
}
public Criteria andCompeteOrderGreaterThan(Byte value) {
public Criteria andCompeteOrderGreaterThan(Integer value) {
addCriterion("compete_order >", value, "competeOrder");
return (Criteria) this;
}
public Criteria andCompeteOrderGreaterThanOrEqualTo(Byte value) {
public Criteria andCompeteOrderGreaterThanOrEqualTo(Integer value) {
addCriterion("compete_order >=", value, "competeOrder");
return (Criteria) this;
}
public Criteria andCompeteOrderLessThan(Byte value) {
public Criteria andCompeteOrderLessThan(Integer value) {
addCriterion("compete_order <", value, "competeOrder");
return (Criteria) this;
}
public Criteria andCompeteOrderLessThanOrEqualTo(Byte value) {
public Criteria andCompeteOrderLessThanOrEqualTo(Integer value) {
addCriterion("compete_order <=", value, "competeOrder");
return (Criteria) this;
}
public Criteria andCompeteOrderIn(List<Byte> values) {
public Criteria andCompeteOrderIn(List<Integer> values) {
addCriterion("compete_order in", values, "competeOrder");
return (Criteria) this;
}
public Criteria andCompeteOrderNotIn(List<Byte> values) {
public Criteria andCompeteOrderNotIn(List<Integer> values) {
addCriterion("compete_order not in", values, "competeOrder");
return (Criteria) this;
}
public Criteria andCompeteOrderBetween(Byte value1, Byte value2) {
public Criteria andCompeteOrderBetween(Integer value1, Integer value2) {
addCriterion("compete_order between", value1, value2, "competeOrder");
return (Criteria) this;
}
public Criteria andCompeteOrderNotBetween(Byte value1, Byte value2) {
public Criteria andCompeteOrderNotBetween(Integer value1, Integer value2) {
addCriterion("compete_order not between", value1, value2, "competeOrder");
return (Criteria) this;
}
@ -465,493 +465,493 @@ public class CompeteStartOrderExample {
return (Criteria) this;
}
public Criteria andCreatedAtIsNull() {
addCriterion("created_at is null");
public Criteria andTaskIdIsNull() {
addCriterion("task_id is null");
return (Criteria) this;
}
public Criteria andCreatedAtIsNotNull() {
addCriterion("created_at is not null");
public Criteria andTaskIdIsNotNull() {
addCriterion("task_id is not null");
return (Criteria) this;
}
public Criteria andCreatedAtEqualTo(Date value) {
addCriterion("created_at =", value, "createdAt");
public Criteria andTaskIdEqualTo(Long value) {
addCriterion("task_id =", value, "taskId");
return (Criteria) this;
}
public Criteria andCreatedAtNotEqualTo(Date value) {
addCriterion("created_at <>", value, "createdAt");
public Criteria andTaskIdNotEqualTo(Long value) {
addCriterion("task_id <>", value, "taskId");
return (Criteria) this;
}
public Criteria andCreatedAtGreaterThan(Date value) {
addCriterion("created_at >", value, "createdAt");
public Criteria andTaskIdGreaterThan(Long value) {
addCriterion("task_id >", value, "taskId");
return (Criteria) this;
}
public Criteria andCreatedAtGreaterThanOrEqualTo(Date value) {
addCriterion("created_at >=", value, "createdAt");
public Criteria andTaskIdGreaterThanOrEqualTo(Long value) {
addCriterion("task_id >=", value, "taskId");
return (Criteria) this;
}
public Criteria andCreatedAtLessThan(Date value) {
addCriterion("created_at <", value, "createdAt");
public Criteria andTaskIdLessThan(Long value) {
addCriterion("task_id <", value, "taskId");
return (Criteria) this;
}
public Criteria andCreatedAtLessThanOrEqualTo(Date value) {
addCriterion("created_at <=", value, "createdAt");
public Criteria andTaskIdLessThanOrEqualTo(Long value) {
addCriterion("task_id <=", value, "taskId");
return (Criteria) this;
}
public Criteria andCreatedAtIn(List<Date> values) {
addCriterion("created_at in", values, "createdAt");
public Criteria andTaskIdIn(List<Long> values) {
addCriterion("task_id in", values, "taskId");
return (Criteria) this;
}
public Criteria andCreatedAtNotIn(List<Date> values) {
addCriterion("created_at not in", values, "createdAt");
public Criteria andTaskIdNotIn(List<Long> values) {
addCriterion("task_id not in", values, "taskId");
return (Criteria) this;
}
public Criteria andCreatedAtBetween(Date value1, Date value2) {
addCriterion("created_at between", value1, value2, "createdAt");
public Criteria andTaskIdBetween(Long value1, Long value2) {
addCriterion("task_id between", value1, value2, "taskId");
return (Criteria) this;
}
public Criteria andCreatedAtNotBetween(Date value1, Date value2) {
addCriterion("created_at not between", value1, value2, "createdAt");
public Criteria andTaskIdNotBetween(Long value1, Long value2) {
addCriterion("task_id not between", value1, value2, "taskId");
return (Criteria) this;
}
public Criteria andUpdatedAtIsNull() {
addCriterion("updated_at is null");
public Criteria andStartTimeIsNull() {
addCriterion("start_time is null");
return (Criteria) this;
}
public Criteria andUpdatedAtIsNotNull() {
addCriterion("updated_at is not null");
public Criteria andStartTimeIsNotNull() {
addCriterion("start_time is not null");
return (Criteria) this;
}
public Criteria andUpdatedAtEqualTo(Date value) {
addCriterion("updated_at =", value, "updatedAt");
public Criteria andStartTimeEqualTo(Long value) {
addCriterion("start_time =", value, "startTime");
return (Criteria) this;
}
public Criteria andUpdatedAtNotEqualTo(Date value) {
addCriterion("updated_at <>", value, "updatedAt");
public Criteria andStartTimeNotEqualTo(Long value) {
addCriterion("start_time <>", value, "startTime");
return (Criteria) this;
}
public Criteria andUpdatedAtGreaterThan(Date value) {
addCriterion("updated_at >", value, "updatedAt");
public Criteria andStartTimeGreaterThan(Long value) {
addCriterion("start_time >", value, "startTime");
return (Criteria) this;
}
public Criteria andUpdatedAtGreaterThanOrEqualTo(Date value) {
addCriterion("updated_at >=", value, "updatedAt");
public Criteria andStartTimeGreaterThanOrEqualTo(Long value) {
addCriterion("start_time >=", value, "startTime");
return (Criteria) this;
}
public Criteria andUpdatedAtLessThan(Date value) {
addCriterion("updated_at <", value, "updatedAt");
public Criteria andStartTimeLessThan(Long value) {
addCriterion("start_time <", value, "startTime");
return (Criteria) this;
}
public Criteria andUpdatedAtLessThanOrEqualTo(Date value) {
addCriterion("updated_at <=", value, "updatedAt");
public Criteria andStartTimeLessThanOrEqualTo(Long value) {
addCriterion("start_time <=", value, "startTime");
return (Criteria) this;
}
public Criteria andUpdatedAtIn(List<Date> values) {
addCriterion("updated_at in", values, "updatedAt");
public Criteria andStartTimeIn(List<Long> values) {
addCriterion("start_time in", values, "startTime");
return (Criteria) this;
}
public Criteria andUpdatedAtNotIn(List<Date> values) {
addCriterion("updated_at not in", values, "updatedAt");
public Criteria andStartTimeNotIn(List<Long> values) {
addCriterion("start_time not in", values, "startTime");
return (Criteria) this;
}
public Criteria andUpdatedAtBetween(Date value1, Date value2) {
addCriterion("updated_at between", value1, value2, "updatedAt");
public Criteria andStartTimeBetween(Long value1, Long value2) {
addCriterion("start_time between", value1, value2, "startTime");
return (Criteria) this;
}
public Criteria andUpdatedAtNotBetween(Date value1, Date value2) {
addCriterion("updated_at not between", value1, value2, "updatedAt");
public Criteria andStartTimeNotBetween(Long value1, Long value2) {
addCriterion("start_time not between", value1, value2, "startTime");
return (Criteria) this;
}
public Criteria andRecStatusIsNull() {
addCriterion("rec_status is null");
public Criteria andEndTimeIsNull() {
addCriterion("end_time is null");
return (Criteria) this;
}
public Criteria andRecStatusIsNotNull() {
addCriterion("rec_status is not null");
public Criteria andEndTimeIsNotNull() {
addCriterion("end_time is not null");
return (Criteria) this;
}
public Criteria andRecStatusEqualTo(Byte value) {
addCriterion("rec_status =", value, "recStatus");
public Criteria andEndTimeEqualTo(Long value) {
addCriterion("end_time =", value, "endTime");
return (Criteria) this;
}
public Criteria andRecStatusNotEqualTo(Byte value) {
addCriterion("rec_status <>", value, "recStatus");
public Criteria andEndTimeNotEqualTo(Long value) {
addCriterion("end_time <>", value, "endTime");
return (Criteria) this;
}
public Criteria andRecStatusGreaterThan(Byte value) {
addCriterion("rec_status >", value, "recStatus");
public Criteria andEndTimeGreaterThan(Long value) {
addCriterion("end_time >", value, "endTime");
return (Criteria) this;
}
public Criteria andRecStatusGreaterThanOrEqualTo(Byte value) {
addCriterion("rec_status >=", value, "recStatus");
public Criteria andEndTimeGreaterThanOrEqualTo(Long value) {
addCriterion("end_time >=", value, "endTime");
return (Criteria) this;
}
public Criteria andRecStatusLessThan(Byte value) {
addCriterion("rec_status <", value, "recStatus");
public Criteria andEndTimeLessThan(Long value) {
addCriterion("end_time <", value, "endTime");
return (Criteria) this;
}
public Criteria andRecStatusLessThanOrEqualTo(Byte value) {
addCriterion("rec_status <=", value, "recStatus");
public Criteria andEndTimeLessThanOrEqualTo(Long value) {
addCriterion("end_time <=", value, "endTime");
return (Criteria) this;
}
public Criteria andRecStatusIn(List<Byte> values) {
addCriterion("rec_status in", values, "recStatus");
public Criteria andEndTimeIn(List<Long> values) {
addCriterion("end_time in", values, "endTime");
return (Criteria) this;
}
public Criteria andRecStatusNotIn(List<Byte> values) {
addCriterion("rec_status not in", values, "recStatus");
public Criteria andEndTimeNotIn(List<Long> values) {
addCriterion("end_time not in", values, "endTime");
return (Criteria) this;
}
public Criteria andRecStatusBetween(Byte value1, Byte value2) {
addCriterion("rec_status between", value1, value2, "recStatus");
public Criteria andEndTimeBetween(Long value1, Long value2) {
addCriterion("end_time between", value1, value2, "endTime");
return (Criteria) this;
}
public Criteria andRecStatusNotBetween(Byte value1, Byte value2) {
addCriterion("rec_status not between", value1, value2, "recStatus");
public Criteria andEndTimeNotBetween(Long value1, Long value2) {
addCriterion("end_time not between", value1, value2, "endTime");
return (Criteria) this;
}
public Criteria andTaskIdIsNull() {
addCriterion("task_id is null");
public Criteria andWaiverIsNull() {
addCriterion("waiver is null");
return (Criteria) this;
}
public Criteria andTaskIdIsNotNull() {
addCriterion("task_id is not null");
public Criteria andWaiverIsNotNull() {
addCriterion("waiver is not null");
return (Criteria) this;
}
public Criteria andTaskIdEqualTo(Long value) {
addCriterion("task_id =", value, "taskId");
public Criteria andWaiverEqualTo(Byte value) {
addCriterion("waiver =", value, "waiver");
return (Criteria) this;
}
public Criteria andTaskIdNotEqualTo(Long value) {
addCriterion("task_id <>", value, "taskId");
public Criteria andWaiverNotEqualTo(Byte value) {
addCriterion("waiver <>", value, "waiver");
return (Criteria) this;
}
public Criteria andTaskIdGreaterThan(Long value) {
addCriterion("task_id >", value, "taskId");
public Criteria andWaiverGreaterThan(Byte value) {
addCriterion("waiver >", value, "waiver");
return (Criteria) this;
}
public Criteria andTaskIdGreaterThanOrEqualTo(Long value) {
addCriterion("task_id >=", value, "taskId");
public Criteria andWaiverGreaterThanOrEqualTo(Byte value) {
addCriterion("waiver >=", value, "waiver");
return (Criteria) this;
}
public Criteria andTaskIdLessThan(Long value) {
addCriterion("task_id <", value, "taskId");
public Criteria andWaiverLessThan(Byte value) {
addCriterion("waiver <", value, "waiver");
return (Criteria) this;
}
public Criteria andTaskIdLessThanOrEqualTo(Long value) {
addCriterion("task_id <=", value, "taskId");
public Criteria andWaiverLessThanOrEqualTo(Byte value) {
addCriterion("waiver <=", value, "waiver");
return (Criteria) this;
}
public Criteria andTaskIdIn(List<Long> values) {
addCriterion("task_id in", values, "taskId");
public Criteria andWaiverIn(List<Byte> values) {
addCriterion("waiver in", values, "waiver");
return (Criteria) this;
}
public Criteria andTaskIdNotIn(List<Long> values) {
addCriterion("task_id not in", values, "taskId");
public Criteria andWaiverNotIn(List<Byte> values) {
addCriterion("waiver not in", values, "waiver");
return (Criteria) this;
}
public Criteria andTaskIdBetween(Long value1, Long value2) {
addCriterion("task_id between", value1, value2, "taskId");
public Criteria andWaiverBetween(Byte value1, Byte value2) {
addCriterion("waiver between", value1, value2, "waiver");
return (Criteria) this;
}
public Criteria andTaskIdNotBetween(Long value1, Long value2) {
addCriterion("task_id not between", value1, value2, "taskId");
public Criteria andWaiverNotBetween(Byte value1, Byte value2) {
addCriterion("waiver not between", value1, value2, "waiver");
return (Criteria) this;
}
public Criteria andStartTimeIsNull() {
addCriterion("start_time is null");
public Criteria andRemarkIsNull() {
addCriterion("remark is null");
return (Criteria) this;
}
public Criteria andStartTimeIsNotNull() {
addCriterion("start_time is not null");
public Criteria andRemarkIsNotNull() {
addCriterion("remark is not null");
return (Criteria) this;
}
public Criteria andStartTimeEqualTo(Long value) {
addCriterion("start_time =", value, "startTime");
public Criteria andRemarkEqualTo(String value) {
addCriterion("remark =", value, "remark");
return (Criteria) this;
}
public Criteria andStartTimeNotEqualTo(Long value) {
addCriterion("start_time <>", value, "startTime");
public Criteria andRemarkNotEqualTo(String value) {
addCriterion("remark <>", value, "remark");
return (Criteria) this;
}
public Criteria andStartTimeGreaterThan(Long value) {
addCriterion("start_time >", value, "startTime");
public Criteria andRemarkGreaterThan(String value) {
addCriterion("remark >", value, "remark");
return (Criteria) this;
}
public Criteria andStartTimeGreaterThanOrEqualTo(Long value) {
addCriterion("start_time >=", value, "startTime");
public Criteria andRemarkGreaterThanOrEqualTo(String value) {
addCriterion("remark >=", value, "remark");
return (Criteria) this;
}
public Criteria andStartTimeLessThan(Long value) {
addCriterion("start_time <", value, "startTime");
public Criteria andRemarkLessThan(String value) {
addCriterion("remark <", value, "remark");
return (Criteria) this;
}
public Criteria andStartTimeLessThanOrEqualTo(Long value) {
addCriterion("start_time <=", value, "startTime");
public Criteria andRemarkLessThanOrEqualTo(String value) {
addCriterion("remark <=", value, "remark");
return (Criteria) this;
}
public Criteria andStartTimeIn(List<Long> values) {
addCriterion("start_time in", values, "startTime");
public Criteria andRemarkLike(String value) {
addCriterion("remark like", value, "remark");
return (Criteria) this;
}
public Criteria andStartTimeNotIn(List<Long> values) {
addCriterion("start_time not in", values, "startTime");
public Criteria andRemarkNotLike(String value) {
addCriterion("remark not like", value, "remark");
return (Criteria) this;
}
public Criteria andStartTimeBetween(Long value1, Long value2) {
addCriterion("start_time between", value1, value2, "startTime");
public Criteria andRemarkIn(List<String> values) {
addCriterion("remark in", values, "remark");
return (Criteria) this;
}
public Criteria andStartTimeNotBetween(Long value1, Long value2) {
addCriterion("start_time not between", value1, value2, "startTime");
public Criteria andRemarkNotIn(List<String> values) {
addCriterion("remark not in", values, "remark");
return (Criteria) this;
}
public Criteria andEndTimeIsNull() {
addCriterion("end_time is null");
public Criteria andRemarkBetween(String value1, String value2) {
addCriterion("remark between", value1, value2, "remark");
return (Criteria) this;
}
public Criteria andEndTimeIsNotNull() {
addCriterion("end_time is not null");
public Criteria andRemarkNotBetween(String value1, String value2) {
addCriterion("remark not between", value1, value2, "remark");
return (Criteria) this;
}
public Criteria andEndTimeEqualTo(Long value) {
addCriterion("end_time =", value, "endTime");
public Criteria andCreatedAtIsNull() {
addCriterion("created_at is null");
return (Criteria) this;
}
public Criteria andEndTimeNotEqualTo(Long value) {
addCriterion("end_time <>", value, "endTime");
public Criteria andCreatedAtIsNotNull() {
addCriterion("created_at is not null");
return (Criteria) this;
}
public Criteria andEndTimeGreaterThan(Long value) {
addCriterion("end_time >", value, "endTime");
public Criteria andCreatedAtEqualTo(Date value) {
addCriterion("created_at =", value, "createdAt");
return (Criteria) this;
}
public Criteria andEndTimeGreaterThanOrEqualTo(Long value) {
addCriterion("end_time >=", value, "endTime");
public Criteria andCreatedAtNotEqualTo(Date value) {
addCriterion("created_at <>", value, "createdAt");
return (Criteria) this;
}
public Criteria andEndTimeLessThan(Long value) {
addCriterion("end_time <", value, "endTime");
public Criteria andCreatedAtGreaterThan(Date value) {
addCriterion("created_at >", value, "createdAt");
return (Criteria) this;
}
public Criteria andEndTimeLessThanOrEqualTo(Long value) {
addCriterion("end_time <=", value, "endTime");
public Criteria andCreatedAtGreaterThanOrEqualTo(Date value) {
addCriterion("created_at >=", value, "createdAt");
return (Criteria) this;
}
public Criteria andEndTimeIn(List<Long> values) {
addCriterion("end_time in", values, "endTime");
public Criteria andCreatedAtLessThan(Date value) {
addCriterion("created_at <", value, "createdAt");
return (Criteria) this;
}
public Criteria andEndTimeNotIn(List<Long> values) {
addCriterion("end_time not in", values, "endTime");
public Criteria andCreatedAtLessThanOrEqualTo(Date value) {
addCriterion("created_at <=", value, "createdAt");
return (Criteria) this;
}
public Criteria andEndTimeBetween(Long value1, Long value2) {
addCriterion("end_time between", value1, value2, "endTime");
public Criteria andCreatedAtIn(List<Date> values) {
addCriterion("created_at in", values, "createdAt");
return (Criteria) this;
}
public Criteria andEndTimeNotBetween(Long value1, Long value2) {
addCriterion("end_time not between", value1, value2, "endTime");
public Criteria andCreatedAtNotIn(List<Date> values) {
addCriterion("created_at not in", values, "createdAt");
return (Criteria) this;
}
public Criteria andRemarkIsNull() {
addCriterion("remark is null");
public Criteria andCreatedAtBetween(Date value1, Date value2) {
addCriterion("created_at between", value1, value2, "createdAt");
return (Criteria) this;
}
public Criteria andRemarkIsNotNull() {
addCriterion("remark is not null");
public Criteria andCreatedAtNotBetween(Date value1, Date value2) {
addCriterion("created_at not between", value1, value2, "createdAt");
return (Criteria) this;
}
public Criteria andRemarkEqualTo(String value) {
addCriterion("remark =", value, "remark");
public Criteria andUpdatedAtIsNull() {
addCriterion("updated_at is null");
return (Criteria) this;
}
public Criteria andRemarkNotEqualTo(String value) {
addCriterion("remark <>", value, "remark");
public Criteria andUpdatedAtIsNotNull() {
addCriterion("updated_at is not null");
return (Criteria) this;
}
public Criteria andRemarkGreaterThan(String value) {
addCriterion("remark >", value, "remark");
public Criteria andUpdatedAtEqualTo(Date value) {
addCriterion("updated_at =", value, "updatedAt");
return (Criteria) this;
}
public Criteria andRemarkGreaterThanOrEqualTo(String value) {
addCriterion("remark >=", value, "remark");
public Criteria andUpdatedAtNotEqualTo(Date value) {
addCriterion("updated_at <>", value, "updatedAt");
return (Criteria) this;
}
public Criteria andRemarkLessThan(String value) {
addCriterion("remark <", value, "remark");
public Criteria andUpdatedAtGreaterThan(Date value) {
addCriterion("updated_at >", value, "updatedAt");
return (Criteria) this;
}
public Criteria andRemarkLessThanOrEqualTo(String value) {
addCriterion("remark <=", value, "remark");
public Criteria andUpdatedAtGreaterThanOrEqualTo(Date value) {
addCriterion("updated_at >=", value, "updatedAt");
return (Criteria) this;
}
public Criteria andRemarkLike(String value) {
addCriterion("remark like", value, "remark");
public Criteria andUpdatedAtLessThan(Date value) {
addCriterion("updated_at <", value, "updatedAt");
return (Criteria) this;
}
public Criteria andRemarkNotLike(String value) {
addCriterion("remark not like", value, "remark");
public Criteria andUpdatedAtLessThanOrEqualTo(Date value) {
addCriterion("updated_at <=", value, "updatedAt");
return (Criteria) this;
}
public Criteria andRemarkIn(List<String> values) {
addCriterion("remark in", values, "remark");
public Criteria andUpdatedAtIn(List<Date> values) {
addCriterion("updated_at in", values, "updatedAt");
return (Criteria) this;
}
public Criteria andRemarkNotIn(List<String> values) {
addCriterion("remark not in", values, "remark");
public Criteria andUpdatedAtNotIn(List<Date> values) {
addCriterion("updated_at not in", values, "updatedAt");
return (Criteria) this;
}
public Criteria andRemarkBetween(String value1, String value2) {
addCriterion("remark between", value1, value2, "remark");
public Criteria andUpdatedAtBetween(Date value1, Date value2) {
addCriterion("updated_at between", value1, value2, "updatedAt");
return (Criteria) this;
}
public Criteria andRemarkNotBetween(String value1, String value2) {
addCriterion("remark not between", value1, value2, "remark");
public Criteria andUpdatedAtNotBetween(Date value1, Date value2) {
addCriterion("updated_at not between", value1, value2, "updatedAt");
return (Criteria) this;
}
public Criteria andWaiverIsNull() {
addCriterion("waiver is null");
public Criteria andRecStatusIsNull() {
addCriterion("rec_status is null");
return (Criteria) this;
}
public Criteria andWaiverIsNotNull() {
addCriterion("waiver is not null");
public Criteria andRecStatusIsNotNull() {
addCriterion("rec_status is not null");
return (Criteria) this;
}
public Criteria andWaiverEqualTo(Byte value) {
addCriterion("waiver =", value, "waiver");
public Criteria andRecStatusEqualTo(Byte value) {
addCriterion("rec_status =", value, "recStatus");
return (Criteria) this;
}
public Criteria andWaiverNotEqualTo(Byte value) {
addCriterion("waiver <>", value, "waiver");
public Criteria andRecStatusNotEqualTo(Byte value) {
addCriterion("rec_status <>", value, "recStatus");
return (Criteria) this;
}
public Criteria andWaiverGreaterThan(Byte value) {
addCriterion("waiver >", value, "waiver");
public Criteria andRecStatusGreaterThan(Byte value) {
addCriterion("rec_status >", value, "recStatus");
return (Criteria) this;
}
public Criteria andWaiverGreaterThanOrEqualTo(Byte value) {
addCriterion("waiver >=", value, "waiver");
public Criteria andRecStatusGreaterThanOrEqualTo(Byte value) {
addCriterion("rec_status >=", value, "recStatus");
return (Criteria) this;
}
public Criteria andWaiverLessThan(Byte value) {
addCriterion("waiver <", value, "waiver");
public Criteria andRecStatusLessThan(Byte value) {
addCriterion("rec_status <", value, "recStatus");
return (Criteria) this;
}
public Criteria andWaiverLessThanOrEqualTo(Byte value) {
addCriterion("waiver <=", value, "waiver");
public Criteria andRecStatusLessThanOrEqualTo(Byte value) {
addCriterion("rec_status <=", value, "recStatus");
return (Criteria) this;
}
public Criteria andWaiverIn(List<Byte> values) {
addCriterion("waiver in", values, "waiver");
public Criteria andRecStatusIn(List<Byte> values) {
addCriterion("rec_status in", values, "recStatus");
return (Criteria) this;
}
public Criteria andWaiverNotIn(List<Byte> values) {
addCriterion("waiver not in", values, "waiver");
public Criteria andRecStatusNotIn(List<Byte> values) {
addCriterion("rec_status not in", values, "recStatus");
return (Criteria) this;
}
public Criteria andWaiverBetween(Byte value1, Byte value2) {
addCriterion("waiver between", value1, value2, "waiver");
public Criteria andRecStatusBetween(Byte value1, Byte value2) {
addCriterion("rec_status between", value1, value2, "recStatus");
return (Criteria) this;
}
public Criteria andWaiverNotBetween(Byte value1, Byte value2) {
addCriterion("waiver not between", value1, value2, "waiver");
public Criteria andRecStatusNotBetween(Byte value1, Byte value2) {
addCriterion("rec_status not between", value1, value2, "recStatus");
return (Criteria) this;
}
}

2
mt/src/main/java/com/ccsens/mt/bean/vo/CompeteVo.java

@ -582,7 +582,7 @@ public class CompeteVo {
@ApiModelProperty("姓名")
private String name;
@ApiModelProperty("场次")
private Byte competeOrder;
private Integer competeOrder;
@ApiModelProperty("场地信息")
private Byte site;
@ApiModelProperty("备注")

3
mt/src/main/java/com/ccsens/mt/bean/vo/TableVo.java

@ -4,6 +4,7 @@ package com.ccsens.mt.bean.vo;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.IdcardUtil;
import cn.hutool.core.util.StrUtil;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@ -170,6 +171,8 @@ public class TableVo {
public static class JoinGroupNum{
@ApiModelProperty("组别id")
private Long groupId;
@JsonIgnore
private String groupName;
@ApiModelProperty("人数")
private String num;
}

4
mt/src/main/java/com/ccsens/mt/persist/dao/CompeteScoreDao.java

@ -102,13 +102,13 @@ public interface CompeteScoreDao {
*/
CompeteVo.OneScore getVarietyScore(@Param("projectId") Long projectId, @Param("siteOrderId")Long siteOrderId);
List<CompeteVo.DaiBiaoDUi> selAllDaiBiaoDui(@Param("identity") byte identity);
List<CompeteVo.DaiBiaoDUi> selAllDaiBiaoDui(@Param("identity") byte identity,@Param("type") Long type);
/**
* 查询参赛队伍信息导出表格用
* @return
*/
List<CompeteVo.MesBiao> selCanSaiDuiWuMes();
List<CompeteVo.MesBiao> selCanSaiDuiWuMes(@Param("type") Long type);
/**
* 查询出场顺序表导出表格用

144
mt/src/main/java/com/ccsens/mt/service/CompeteTaskService.java

@ -101,31 +101,31 @@ public class CompeteTaskService implements ICompeteTaskService {
//有则修改
competeProjectConfig = projectConfigList.get(0);
//如果时间、时长、场地数和之前一样则不修改
if(projectConfig.getStartTime().equals(competeProjectConfig.getStartTime()) &&
projectConfig.getEndTime().equals(competeProjectConfig.getEndTime())&&
projectConfig.getDuration().equals(competeProjectConfig.getProjectDuration()) &&
projectConfig.getSiteNum() == competeProjectConfig.getSiteNum()){
log.info("{},时间与之前相同",projectConfig.getProjectId());
return;
}
// if(projectConfig.getStartTime().equals(competeProjectConfig.getStartTime()) &&
// projectConfig.getEndTime().equals(competeProjectConfig.getEndTime())&&
// projectConfig.getDuration().equals(competeProjectConfig.getProjectDuration()) &&
// projectConfig.getSiteNum() == competeProjectConfig.getSiteNum()){
// log.info("{},时间与之前相同",projectConfig.getProjectId());
// return;
// }
//如果场地数量不同,则删除该项目下所有裁判,及tall内的角色
if(projectConfig.getSiteNum() != competeProjectConfig.getSiteNum()){
CompeteJudgmentExample judgmentExample = new CompeteJudgmentExample();
judgmentExample.createCriteria().andProjectIdEqualTo(projectConfig.getProjectId());
List<CompeteJudgment> judgmentList = competeJudgmentDao.selectByExample(judgmentExample);
if(CollectionUtil.isNotEmpty(judgmentList)){
judgmentList.forEach(judgment ->{
judgment.setRecStatus((byte) 2);
competeJudgmentDao.updateByPrimaryKeySelective(judgment);
// if(projectConfig.getSiteNum() != competeProjectConfig.getSiteNum()){
// CompeteJudgmentExample judgmentExample = new CompeteJudgmentExample();
// judgmentExample.createCriteria().andProjectIdEqualTo(projectConfig.getProjectId());
// List<CompeteJudgment> judgmentList = competeJudgmentDao.selectByExample(judgmentExample);
// if(CollectionUtil.isNotEmpty(judgmentList)){
// judgmentList.forEach(judgment ->{
// judgment.setRecStatus((byte) 2);
// competeJudgmentDao.updateByPrimaryKeySelective(judgment);
MemberRoleDto.DeleteRole deleteRole = new MemberRoleDto.DeleteRole();
deleteRole.setRoleId(judgment.getRoleId());
deleteRole.setToken(token);
log.info("删除角色:{}", judgment.getRoleId());
tallFeignClient.deleteRole(deleteRole);
});
}
}
// MemberRoleDto.DeleteRole deleteRole = new MemberRoleDto.DeleteRole();
// deleteRole.setRoleId(judgment.getRoleId());
// deleteRole.setToken(token);
// log.info("删除角色:{}", judgment.getRoleId());
// tallFeignClient.deleteRole(deleteRole);
// });
// }
// }
competeProjectConfig.setProjectDuration(projectConfig.getDuration());
competeProjectConfig.setSiteNum(projectConfig.getSiteNum());
competeProjectConfig.setStartTime(projectConfig.getStartTime() == null ? 0 : projectConfig.getStartTime());
@ -186,61 +186,61 @@ public class CompeteTaskService implements ICompeteTaskService {
if (CollectionUtil.isNotEmpty(startOrderList)) {
CompeteStartOrder competeStartOrder = startOrderList.get(0);
competeStartOrder.setSite((byte) site);
competeStartOrder.setCompeteOrder((byte) competeOrder);
competeStartOrder.setCompeteOrder(competeOrder);
// if (orderTime > 0 && (competeStartOrder.getStartTime() == projectStartTime || competeStartOrder.getEndTime() == projectStartTime + orderTime)) {
competeStartOrder.setStartTime(projectStartTime);
competeStartOrder.setEndTime(projectStartTime + orderTime);
log.info("修改场次信息:{}", competeStartOrder);
startOrderMapper.updateByPrimaryKeySelective(competeStartOrder);
// 修改tall的任务
TallTaskDto.UpdateTaskInfo updateTaskInfo = new TallTaskDto.UpdateTaskInfo();
updateTaskInfo.setId(competeStartOrder.getTaskId());
updateTaskInfo.setName(project.getName() + competeOrder + "-" + site);
updateTaskInfo.setBeginTime(competeStartOrder.getStartTime());
updateTaskInfo.setEndTime(competeStartOrder.getEndTime());
updateTaskInfo.setToken(token);
// TODO
log.info("修改tall的任务信息:{}", updateTaskInfo);
JsonResponse<TaskVo.NormalTask> normalTaskJsonResponse = tallFeignClient.updataTask(updateTaskInfo);
log.info("修改tall的任务信息后返回:{}", normalTaskJsonResponse);
//失败return
if (ObjectUtil.isNull(normalTaskJsonResponse)) {
log.info("调用tall返回null");
taskErrorList.add("修改任务失败"+competeStartOrder.getTaskId());
}
if(normalTaskJsonResponse.getCode() != 200){
log.info("调用tall异常后返回:{}", normalTaskJsonResponse.getMsg());
taskErrorList.add(normalTaskJsonResponse.getMsg()+competeStartOrder.getTaskId());
}
// // 修改tall的任务
// TallTaskDto.UpdateTaskInfo updateTaskInfo = new TallTaskDto.UpdateTaskInfo();
// updateTaskInfo.setId(competeStartOrder.getTaskId());
// updateTaskInfo.setName(project.getName() + competeOrder + "-" + site);
// updateTaskInfo.setBeginTime(competeStartOrder.getStartTime());
// updateTaskInfo.setEndTime(competeStartOrder.getEndTime());
// updateTaskInfo.setToken(token);
// // TODO
// log.info("修改tall的任务信息:{}", updateTaskInfo);
// JsonResponse<TaskVo.NormalTask> normalTaskJsonResponse = tallFeignClient.updataTask(updateTaskInfo);
// log.info("修改tall的任务信息后返回:{}", normalTaskJsonResponse);
// //失败return
// if (ObjectUtil.isNull(normalTaskJsonResponse)) {
// log.info("调用tall返回null");
// taskErrorList.add("修改任务失败"+competeStartOrder.getTaskId());
// }
// if(normalTaskJsonResponse.getCode() != 200){
// log.info("调用tall异常后返回:{}", normalTaskJsonResponse.getMsg());
// taskErrorList.add(normalTaskJsonResponse.getMsg()+competeStartOrder.getTaskId());
// }
// }
} 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);
// TODO
log.info("在tall内添加任务:{}", addTask);
JsonResponse<TaskVo.NormalTask> normalTaskJsonResponse = tallFeignClient.saveTask(addTask);
//异常return
log.info("添加任务后返回:{}", normalTaskJsonResponse);
if (ObjectUtil.isNull(normalTaskJsonResponse)) {
log.info("调用tall返回null");
continue;
}
if(normalTaskJsonResponse.getCode() != 200){
log.info("调用tall异常后返回:{}", normalTaskJsonResponse.getMsg());
continue;
}
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);
// // TODO
// log.info("在tall内添加任务:{}", addTask);
// JsonResponse<TaskVo.NormalTask> normalTaskJsonResponse = tallFeignClient.saveTask(addTask);
// //异常return
// log.info("添加任务后返回:{}", normalTaskJsonResponse);
// if (ObjectUtil.isNull(normalTaskJsonResponse)) {
// log.info("调用tall返回null");
// continue;
// }
// if(normalTaskJsonResponse.getCode() != 200){
// log.info("调用tall异常后返回:{}", normalTaskJsonResponse.getMsg());
// continue;
// }
// TaskVo.NormalTask normalTask = normalTaskJsonResponse.getData();
// if (ObjectUtil.isNotNull(normalTask)) {
// taskId = normalTask.getDetailId();
// }
//添加出场顺序信息
CompeteStartOrder competeStartOrder = new CompeteStartOrder();
competeStartOrder.setId(snowflake.nextId());
@ -248,8 +248,8 @@ public class CompeteTaskService implements ICompeteTaskService {
competeStartOrder.setPlayerId(playerIdOrTeamId);
competeStartOrder.setSite((byte) site);
competeStartOrder.setTeam(project.getTeam());
competeStartOrder.setCompeteOrder((byte) competeOrder);
competeStartOrder.setTaskId(taskId);
competeStartOrder.setCompeteOrder(competeOrder);
// competeStartOrder.setTaskId(taskId);
competeStartOrder.setStartTime(projectStartTime);
competeStartOrder.setEndTime(projectStartTime + orderTime);
log.info("添加场次信息:{}", competeStartOrder);

262
mt/src/main/java/com/ccsens/mt/service/ExcelService.java

@ -78,7 +78,7 @@ public class ExcelService implements IExcelService {
@Override
public String dasaiduiwuxinxiWPS(QueryDto<CompeteDto.CompeteTime> params) {
List<CompeteVo.MesBiao> mesBiaos = competeScoreDao.selCanSaiDuiWuMes();
List<CompeteVo.MesBiao> mesBiaos = competeScoreDao.selCanSaiDuiWuMes(params.getParam().getCompeteTimeId());
List<List<PoiUtil.PoiUtilCell>> biao = new ArrayList<>();
//先把联系人的都添加进去
@ -168,8 +168,8 @@ public class ExcelService implements IExcelService {
@Override
public String iTeamListService(QueryDto<CompeteDto.CompeteTime> params) {
List<CompeteVo.DaiBiaoDUi> daiBiaoDUis0 = competeScoreDao.selAllDaiBiaoDui((byte) 0);
List<CompeteVo.DaiBiaoDUi> daiBiaoDUis1 = competeScoreDao.selAllDaiBiaoDui((byte) 1);
List<CompeteVo.DaiBiaoDUi> daiBiaoDUis0 = competeScoreDao.selAllDaiBiaoDui((byte) 0,params.getParam().getCompeteTimeId());
List<CompeteVo.DaiBiaoDUi> daiBiaoDUis1 = competeScoreDao.selAllDaiBiaoDui((byte) 1,params.getParam().getCompeteTimeId());
//查出所有的单位的id
List<CompeteCompany> competeCompanyList= competeCompanyDao.selectByCompeteTimeId(params.getParam().getCompeteTimeId());
@ -756,24 +756,24 @@ public class ExcelService implements IExcelService {
//创建行对象
List<PoiUtil.PoiUtilCell> title = new ArrayList<>();
//给首行单元格赋值
title.add(new PoiUtil.PoiUtilCell("序号"));
title.add(new PoiUtil.PoiUtilCell("参赛项目"));
title.add(new PoiUtil.PoiUtilCell("小学男子组"));
title.add(new PoiUtil.PoiUtilCell("小学女子组"));
title.add(new PoiUtil.PoiUtilCell("小学混合组"));
title.add(new PoiUtil.PoiUtilCell("中学男子组"));
title.add(new PoiUtil.PoiUtilCell("中学女子组"));
title.add(new PoiUtil.PoiUtilCell("中学混合组"));
title.add(new PoiUtil.PoiUtilCell("高职院校男子组"));
title.add(new PoiUtil.PoiUtilCell("高职院校女子组"));
title.add(new PoiUtil.PoiUtilCell("高职院校混合组"));
title.add(new PoiUtil.PoiUtilCell("本科院校男子组"));
title.add(new PoiUtil.PoiUtilCell("本科院校女子组"));
title.add(new PoiUtil.PoiUtilCell("本科院校混合组"));
title.add(new PoiUtil.PoiUtilCell("俱乐部男子组(14岁及以下)"));
title.add(new PoiUtil.PoiUtilCell("俱乐部女子组(14岁及以下)"));
title.add(new PoiUtil.PoiUtilCell("俱乐部混合组(14岁及以下)"));
title.add(new PoiUtil.PoiUtilCell("合计"));
// title.add(new PoiUtil.PoiUtilCell("序号"));
// title.add(new PoiUtil.PoiUtilCell("参赛项目"));
// title.add(new PoiUtil.PoiUtilCell("小学男子组"));
// title.add(new PoiUtil.PoiUtilCell("小学女子组"));
// title.add(new PoiUtil.PoiUtilCell("小学混合组"));
// title.add(new PoiUtil.PoiUtilCell("中学男子组"));
// title.add(new PoiUtil.PoiUtilCell("中学女子组"));
// title.add(new PoiUtil.PoiUtilCell("中学混合组"));
// title.add(new PoiUtil.PoiUtilCell("高职院校男子组"));
// title.add(new PoiUtil.PoiUtilCell("高职院校女子组"));
// title.add(new PoiUtil.PoiUtilCell("高职院校混合组"));
// title.add(new PoiUtil.PoiUtilCell("本科院校男子组"));
// title.add(new PoiUtil.PoiUtilCell("本科院校女子组"));
// title.add(new PoiUtil.PoiUtilCell("本科院校混合组"));
// title.add(new PoiUtil.PoiUtilCell("俱乐部男子组(14岁及以下)"));
// title.add(new PoiUtil.PoiUtilCell("俱乐部女子组(14岁及以下)"));
// title.add(new PoiUtil.PoiUtilCell("俱乐部混合组(14岁及以下)"));
// title.add(new PoiUtil.PoiUtilCell("合计"));
list.add(title);
//创建整个excel表格对象
Workbook workbook = new XSSFWorkbook();
@ -797,120 +797,120 @@ public class ExcelService implements IExcelService {
}
PoiUtil.PoiUtilCell poiUtilCell = new PoiUtil.PoiUtilCell();
poiUtilCell.setValue("");
poiUtilCell.setFunction("sum(C"+a+":Q"+a+")");
// poiUtilCell.setFunction("sum(C"+a+":Q"+a+")");
cells.add(poiUtilCell);
list.add(cells);
i++;
a++;
if (competeAllCount.getProjectId()==2017){
cells = new ArrayList<>();
PoiUtil.PoiUtilCell poiUtilCel = new PoiUtil.PoiUtilCell();
poiUtilCel.setValue("--");
cells.add(poiUtilCel);
PoiUtil.PoiUtilCell poiUtilCel1 = new PoiUtil.PoiUtilCell();
poiUtilCel1.setValue("合计");
cells.add(poiUtilCel1);
for (int j = 3; j <19 ; j++) {
PoiUtil.PoiUtilCell poiUtilCel2 = new PoiUtil.PoiUtilCell();
if (j==3){
poiUtilCel2.setValue("");
poiUtilCel2.setFunction("sum(C2:C8)");
cells.add(poiUtilCel2);
}
if (j==4){
poiUtilCel2.setValue("");
poiUtilCel2.setFunction("sum(D2:D8)");
cells.add(poiUtilCel2);
}
if (j==5){
poiUtilCel2.setValue("");
poiUtilCel2.setFunction("sum(E2:E8)");
cells.add(poiUtilCel2);
}
if (j==6){
poiUtilCel2.setValue("");
poiUtilCel2.setFunction("sum(F2:F8)");
cells.add(poiUtilCel2);
} if (j==7){
poiUtilCel2.setValue("");
poiUtilCel2.setFunction("sum(G2:G8)");
cells.add(poiUtilCel2);
} if (j==8){
poiUtilCel2.setValue("");
poiUtilCel2.setFunction("sum(H2:H8)");
cells.add(poiUtilCel2);
} if (j==9){
poiUtilCel2.setValue("");
poiUtilCel2.setFunction("sum(I2:I8)");
cells.add(poiUtilCel2);
} if (j==10){
poiUtilCel2.setValue("");
poiUtilCel2.setFunction("sum(J2:J8)");
cells.add(poiUtilCel2);
} if (j==11){
poiUtilCel2.setValue("");
poiUtilCel2.setFunction("sum(K2:K8)");
cells.add(poiUtilCel2);
}
if (j==12){
poiUtilCel2.setValue("");
poiUtilCel2.setFunction("sum(L2:L8)");
cells.add(poiUtilCel2);
}
if (j==13){
poiUtilCel2.setValue("");
poiUtilCel2.setFunction("sum(M2:N8)");
cells.add(poiUtilCel2);
}
if (j==14){
poiUtilCel2.setValue("");
poiUtilCel2.setFunction("sum(N2:N8)");
cells.add(poiUtilCel2);
}
if (j==15){
poiUtilCel2.setValue("");
poiUtilCel2.setFunction("sum(O2:O8)");
cells.add(poiUtilCel2);
}
if (j==16){
poiUtilCel2.setValue("");
poiUtilCel2.setFunction("sum(P2:P8)");
cells.add(poiUtilCel2);
}
if (j==17){
poiUtilCel2.setValue("");
poiUtilCel2.setFunction("sum(Q2:Q8)");
cells.add(poiUtilCel2);
}
if (j==18){
poiUtilCel2.setValue("");
poiUtilCel2.setFunction("sum(R2:R8)");
cells.add(poiUtilCel2);
}
// String T1 = PoiUtil.toRadix(j);
// poiUtilCel2.setFunction("sum(c"+2+":c"+8+")");
}
list.add(cells);
}
if (competeAllCount.getProjectId()==2026){
cells = new ArrayList<>();
PoiUtil.PoiUtilCell poiUtilCel = new PoiUtil.PoiUtilCell();
poiUtilCel.setValue("--");
cells.add(poiUtilCel);
PoiUtil.PoiUtilCell poiUtilCel1 = new PoiUtil.PoiUtilCell();
poiUtilCel1.setValue("合计");
cells.add(poiUtilCel1);
PoiUtil.PoiUtilCell poiUtilCel2 = new PoiUtil.PoiUtilCell(3 + "", 15, 1, 300, 18);
poiUtilCel2.setValue("");
poiUtilCel2.setFunction("sum(C10:C18)");
cells.add(poiUtilCel2);
PoiUtil.PoiUtilCell poiUtilCel3 = new PoiUtil.PoiUtilCell();
poiUtilCel3.setValue("");
poiUtilCel3.setFunction("sum(R2:C19)");
cells.add(poiUtilCel3);
list.add(cells);
}
// if (competeAllCount.getProjectId()==2017){
// cells = new ArrayList<>();
// PoiUtil.PoiUtilCell poiUtilCel = new PoiUtil.PoiUtilCell();
// poiUtilCel.setValue("--");
// cells.add(poiUtilCel);
// PoiUtil.PoiUtilCell poiUtilCel1 = new PoiUtil.PoiUtilCell();
// poiUtilCel1.setValue("合计");
// cells.add(poiUtilCel1);
// for (int j = 3; j <19 ; j++) {
// PoiUtil.PoiUtilCell poiUtilCel2 = new PoiUtil.PoiUtilCell();
// if (j==3){
// poiUtilCel2.setValue("");
// poiUtilCel2.setFunction("sum(C2:C8)");
// cells.add(poiUtilCel2);
// }
// if (j==4){
// poiUtilCel2.setValue("");
// poiUtilCel2.setFunction("sum(D2:D8)");
// cells.add(poiUtilCel2);
// }
// if (j==5){
// poiUtilCel2.setValue("");
// poiUtilCel2.setFunction("sum(E2:E8)");
// cells.add(poiUtilCel2);
// }
// if (j==6){
// poiUtilCel2.setValue("");
// poiUtilCel2.setFunction("sum(F2:F8)");
// cells.add(poiUtilCel2);
// } if (j==7){
// poiUtilCel2.setValue("");
// poiUtilCel2.setFunction("sum(G2:G8)");
// cells.add(poiUtilCel2);
// } if (j==8){
// poiUtilCel2.setValue("");
// poiUtilCel2.setFunction("sum(H2:H8)");
// cells.add(poiUtilCel2);
// } if (j==9){
// poiUtilCel2.setValue("");
// poiUtilCel2.setFunction("sum(I2:I8)");
// cells.add(poiUtilCel2);
// } if (j==10){
// poiUtilCel2.setValue("");
// poiUtilCel2.setFunction("sum(J2:J8)");
// cells.add(poiUtilCel2);
// } if (j==11){
// poiUtilCel2.setValue("");
// poiUtilCel2.setFunction("sum(K2:K8)");
// cells.add(poiUtilCel2);
// }
// if (j==12){
// poiUtilCel2.setValue("");
// poiUtilCel2.setFunction("sum(L2:L8)");
// cells.add(poiUtilCel2);
// }
// if (j==13){
// poiUtilCel2.setValue("");
// poiUtilCel2.setFunction("sum(M2:N8)");
// cells.add(poiUtilCel2);
// }
// if (j==14){
// poiUtilCel2.setValue("");
// poiUtilCel2.setFunction("sum(N2:N8)");
// cells.add(poiUtilCel2);
// }
// if (j==15){
// poiUtilCel2.setValue("");
// poiUtilCel2.setFunction("sum(O2:O8)");
// cells.add(poiUtilCel2);
// }
// if (j==16){
// poiUtilCel2.setValue("");
// poiUtilCel2.setFunction("sum(P2:P8)");
// cells.add(poiUtilCel2);
// }
// if (j==17){
// poiUtilCel2.setValue("");
// poiUtilCel2.setFunction("sum(Q2:Q8)");
// cells.add(poiUtilCel2);
// }
// if (j==18){
// poiUtilCel2.setValue("");
// poiUtilCel2.setFunction("sum(R2:R8)");
// cells.add(poiUtilCel2);
// }
//// String T1 = PoiUtil.toRadix(j);
//// poiUtilCel2.setFunction("sum(c"+2+":c"+8+")");
// }
// list.add(cells);
// }
//
// if (competeAllCount.getProjectId()==2026){
// cells = new ArrayList<>();
// PoiUtil.PoiUtilCell poiUtilCel = new PoiUtil.PoiUtilCell();
// poiUtilCel.setValue("--");
// cells.add(poiUtilCel);
// PoiUtil.PoiUtilCell poiUtilCel1 = new PoiUtil.PoiUtilCell();
// poiUtilCel1.setValue("合计");
// cells.add(poiUtilCel1);
// PoiUtil.PoiUtilCell poiUtilCel2 = new PoiUtil.PoiUtilCell(3 + "", 15, 1, 300, 18);
// poiUtilCel2.setValue("");
// poiUtilCel2.setFunction("sum(C10:C18)");
// cells.add(poiUtilCel2);
// PoiUtil.PoiUtilCell poiUtilCel3 = new PoiUtil.PoiUtilCell();
// poiUtilCel3.setValue("");
// poiUtilCel3.setFunction("sum(R2:C19)");
// cells.add(poiUtilCel3);
// list.add(cells);
// }

4
mt/src/main/resources/druid-dev.yml

@ -28,8 +28,8 @@ spring:
testOnReturn: false
testWhileIdle: true
timeBetweenEvictionRunsMillis: 60000
url: jdbc:mysql://49.233.89.188:3306/mt?useUnicode=true&characterEncoding=UTF-8
# url: jdbc:mysql://www.tall.wiki/mt?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&autoReconnect=true
# url: jdbc:mysql://49.233.89.188:3306/mt?useUnicode=true&characterEncoding=UTF-8
url: jdbc:mysql://www.tall.wiki/mt?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&autoReconnect=true
username: root
validationQuery: SELECT 1 FROM DUAL
# env: CCSENS_GAME

16
mt/src/main/resources/mapper_dao/CompetePlayerDao.xml

@ -351,8 +351,8 @@
t_compete_project p ,
t_compete_group gr
WHERE
p.type = 0
and gr.type = 0
p.type = #{type}
and gr.type = #{type}
and p.team = 0
and p.`level` = 2
and p.rec_status = 0
@ -372,7 +372,7 @@
LEFT JOIN t_compete_project p on pp.project_id = p.id
WHERE
pp.rec_status = 0
and p.type = 0
and p.type = #{type}
and p.team = 0
and p.`level` = 2
and p.rec_status = 0
@ -382,7 +382,7 @@
and t.group_remark = g.group_remark
and t.projectId = g.projectId
WHERE
g.type = 0
g.type = #{type}
and g.rec_status = 0
GROUP BY g.projectId,g.id
ORDER BY g.projectId,g.sequence
@ -431,8 +431,8 @@
t_compete_project p ,
t_compete_group gr
WHERE
p.type = 0
and gr.type = 0
p.type = #{type}
and gr.type = #{type}
and p.team = 1
and p.`level` = 2
and p.join_rule = 0
@ -452,7 +452,7 @@
LEFT JOIN t_compete_project p on t.project_id = p.id
WHERE
t.rec_status = 0
and p.type = 0
and p.type = #{type}
and p.team = 1
and p.`level` = 2
and p.join_rule = 0
@ -462,7 +462,7 @@
and t.group_remark = g.group_remark
and t.projectId = g.projectId
WHERE
g.type = 0
g.type = #{type}
and g.rec_status = 0
GROUP BY g.projectId,g.id
ORDER BY g.projectId,g.sequence

52
mt/src/main/resources/mapper_dao/CompeteProjectDao.xml

@ -17,21 +17,17 @@
tcp.`name` as name,
if(tcp.gender = 1,'男','女') as gender,
tcp.id_card as idCard,
(2020 - SUBSTR(tcp.id_card FROM 7 FOR 4)) as age,
(2021 - SUBSTR(tcp.id_card FROM 7 FOR 4)) as age,
tcpro.join_rule as joinRule
from t_compete_project tcpro
LEFT JOIN t_compete_project_player tcpp on tcpro.id = tcpp.project_id
LEFT JOIN t_compete_player tcp on tcp.id = tcpp.player_id
LEFT JOIN t_compete_company tcc on tcc.id= tcp.company_id
LEFT JOIN t_compete_group tcg on tcg.id =tcp.compete_group_id
LEFT JOIN t_compete_project_player tcpp on tcpro.id = tcpp.project_id and tcpp.rec_status =0
LEFT JOIN t_compete_player tcp on tcp.id = tcpp.player_id and tcp.rec_status=0
LEFT JOIN t_compete_company tcc on tcc.id= tcp.company_id and tcc.rec_status=0
LEFT JOIN t_compete_group tcg on tcg.id =tcp.compete_group_id and tcg.rec_status=0
WHERE tcpro.`level`=#{level}
and tcpro.type = #{type}
and tcpro.team = 0
and tcpro.rec_status=0
and tcpp.rec_status =0
and tcp.rec_status=0
and tcc.rec_status=0
and tcg.rec_status=0
</select>
<select id="getPlayerForTeam" resultType="com.ccsens.mt.bean.vo.TableVo$CompeteJoin" parameterType="java.util.Map">
@ -43,25 +39,21 @@
pl.`name` as name ,
pl.id_card as idCard,
if(pl.gender = 1,'男','女') as gender,
(2020 - SUBSTR(pl.id_card FROM 7 FOR 4)) as age,
(2021 - SUBSTR(pl.id_card FROM 7 FOR 4)) as age,
p.join_rule as joinRule
FROM
t_compete_project p
LEFT JOIN t_compete_team t on p.id = t.project_id
LEFT JOIN t_compete_team_member m on t.id = m.compete_team_id
LEFT JOIN t_compete_company c on t.company_id = c.id
LEFT JOIN t_compete_player pl on m.player_id = pl.id
LEFT JOIN t_compete_group g on t.gender_group = g.sex and t.group_remark = g.group_remark
LEFT JOIN t_compete_team t on p.id = t.project_id and t.rec_status = 0
LEFT JOIN t_compete_team_member m on t.id = m.compete_team_id and m.rec_status = 0
LEFT JOIN t_compete_company c on t.company_id = c.id and c.rec_status = 0
LEFT JOIN t_compete_player pl on m.player_id = pl.id and pl.rec_status = 0
LEFT JOIN t_compete_group g on t.gender_group = g.sex and t.group_remark = g.group_remark and g.rec_status = 0 and g.type = 5
WHERE
p.type = #{type}
and p.`level` = #{level}
and p.team = 1
and p.rec_status = 0
and m.rec_status = 0
and t.rec_status = 0
and pl.rec_status = 0
and g.rec_status = 0
and c.rec_status = 0
</select>
<select id="queryProject" resultMap="com.ccsens.mt.persist.mapper.CompeteProjectMapper.BaseResultMap">
SELECT
@ -83,15 +75,15 @@
pp.id
FROM
t_compete_project_player pp
LEFT JOIN t_compete_player p on pp.player_id = p.id
LEFT JOIN t_compete_group g on p.compete_group_id = g.id
LEFT JOIN t_compete_company c on p.company_id = c.id
LEFT JOIN t_compete_player p on pp.player_id = p.id and p.rec_status = 0
LEFT JOIN t_compete_group g on p.compete_group_id = g.id and g.rec_status = 0 and g.type = 5
LEFT JOIN t_compete_company c on p.company_id = c.id and c.rec_status = 0
WHERE
pp.project_id = #{projectId}
and pp.rec_status = 0
and p.rec_status = 0
and g.rec_status = 0
and c.rec_status = 0
ORDER BY g.id
</if>
<if test="team == 1">
@ -99,13 +91,13 @@
t.id
FROM
t_compete_team t
LEFT JOIN t_compete_group g on t.group_remark = g.group_remark and t.gender_group = g.sex
LEFT JOIN t_compete_company c on t.company_id = c.id
LEFT JOIN t_compete_group g on t.group_remark = g.group_remark and t.gender_group = g.sex and g.rec_status = 0 and g.type = 5
LEFT JOIN t_compete_company c on t.company_id = c.id and c.rec_status = 0
WHERE
t.project_id = #{projectId}
and t.rec_status = 0
and g.rec_status = 0
and c.rec_status = 0
ORDER BY g.id
</if>
</select>

39
mt/src/main/resources/mapper_dao/CompeteScoreDao.xml

@ -1496,7 +1496,7 @@ ORDER BY
WHERE
tcc.rec_status = 0
AND tcp.rec_status = 0
AND tcc.compete_time_id = 1
AND tcc.compete_time_id = #{type}
) t
WHERE
`after` != 0
@ -1548,7 +1548,7 @@ ORDER BY
WHERE
tcc.rec_status = 0
AND tcp.rec_status = 0
AND tcc.compete_time_id = 1
AND tcc.compete_time_id = #{type}
) t
WHERE
`after` != 0
@ -1594,7 +1594,7 @@ ORDER BY
WHERE
tcc.rec_status = 0
AND tcp.rec_status = 0
AND tcc.compete_time_id = 1
AND tcc.compete_time_id = #{type}
) t
WHERE
`after` != 0
@ -1708,26 +1708,29 @@ ORDER BY
v.video_url as videoUrl
FROM
t_compete_project p
LEFT JOIN t_compete_team t ON p.id = t.project_id
LEFT JOIN t_compete_team_member m ON t.id = m.compete_team_id
LEFT JOIN t_compete_company c ON t.company_id = c.id
LEFT JOIN t_compete_player pl ON m.player_id = pl.id
LEFT JOIN t_compete_group g ON t.gender_group = g.sex
AND t.group_remark = g.group_remark
LEFT JOIN t_compete_project_config pc ON pc.project_id = p.id
LEFT JOIN t_compete_start_order so ON t.id = so.player_id
LEFT JOIN t_compete_video v on v.player_id = t.id and v.rec_status = 0
LEFT JOIN t_compete_team t ON p.id = t.project_id
and t.rec_status = 0
LEFT JOIN t_compete_team_member m ON t.id = m.compete_team_id
and m.rec_status = 0
LEFT JOIN t_compete_company c ON t.company_id = c.id
and c.rec_status = 0
LEFT JOIN t_compete_player pl ON m.player_id = pl.id
and pl.rec_status = 0
LEFT JOIN t_compete_group g ON t.gender_group = g.sex
AND t.group_remark = g.group_remark AND g.rec_status = 0
and g.type = #{type}
LEFT JOIN t_compete_project_config pc ON pc.project_id = p.id
AND pc.rec_status = 0
LEFT JOIN t_compete_start_order so ON t.id = so.player_id
AND so.rec_status = 0
LEFT JOIN t_compete_video v ON v.player_id = t.id
AND v.rec_status = 0
WHERE
p.type = #{type}
AND p.`level` = 2
AND p.team = 1
AND p.rec_status = 0
AND m.rec_status = 0
AND t.rec_status = 0
AND pl.rec_status = 0
AND g.rec_status = 0
AND c.rec_status = 0
AND pc.rec_status = 0
AND so.rec_status = 0
GROUP BY
c.id,

138
mt/src/main/resources/mapper_raw/CompeteStartOrderMapper.xml

@ -6,16 +6,16 @@
<result column="project_id" jdbcType="BIGINT" property="projectId" />
<result column="player_id" jdbcType="BIGINT" property="playerId" />
<result column="team" jdbcType="TINYINT" property="team" />
<result column="compete_order" jdbcType="TINYINT" property="competeOrder" />
<result column="compete_order" jdbcType="INTEGER" property="competeOrder" />
<result column="site" jdbcType="TINYINT" property="site" />
<result column="created_at" jdbcType="TIMESTAMP" property="createdAt" />
<result column="updated_at" jdbcType="TIMESTAMP" property="updatedAt" />
<result column="rec_status" jdbcType="TINYINT" property="recStatus" />
<result column="task_id" jdbcType="BIGINT" property="taskId" />
<result column="start_time" jdbcType="BIGINT" property="startTime" />
<result column="end_time" jdbcType="BIGINT" property="endTime" />
<result column="remark" jdbcType="VARCHAR" property="remark" />
<result column="waiver" jdbcType="TINYINT" property="waiver" />
<result column="remark" jdbcType="VARCHAR" property="remark" />
<result column="created_at" jdbcType="TIMESTAMP" property="createdAt" />
<result column="updated_at" jdbcType="TIMESTAMP" property="updatedAt" />
<result column="rec_status" jdbcType="TINYINT" property="recStatus" />
</resultMap>
<sql id="Example_Where_Clause">
<where>
@ -76,8 +76,8 @@
</where>
</sql>
<sql id="Base_Column_List">
id, project_id, player_id, team, compete_order, site, created_at, updated_at, rec_status,
task_id, start_time, end_time, remark, waiver
id, project_id, player_id, team, compete_order, site, task_id, start_time, end_time,
waiver, remark, created_at, updated_at, rec_status
</sql>
<select id="selectByExample" parameterType="com.ccsens.mt.bean.po.CompeteStartOrderExample" resultMap="BaseResultMap">
select
@ -112,14 +112,14 @@
<insert id="insert" parameterType="com.ccsens.mt.bean.po.CompeteStartOrder">
insert into t_compete_start_order (id, project_id, player_id,
team, compete_order, site,
created_at, updated_at, rec_status,
task_id, start_time, end_time,
remark, waiver)
waiver, remark, created_at,
updated_at, rec_status)
values (#{id,jdbcType=BIGINT}, #{projectId,jdbcType=BIGINT}, #{playerId,jdbcType=BIGINT},
#{team,jdbcType=TINYINT}, #{competeOrder,jdbcType=TINYINT}, #{site,jdbcType=TINYINT},
#{createdAt,jdbcType=TIMESTAMP}, #{updatedAt,jdbcType=TIMESTAMP}, #{recStatus,jdbcType=TINYINT},
#{team,jdbcType=TINYINT}, #{competeOrder,jdbcType=INTEGER}, #{site,jdbcType=TINYINT},
#{taskId,jdbcType=BIGINT}, #{startTime,jdbcType=BIGINT}, #{endTime,jdbcType=BIGINT},
#{remark,jdbcType=VARCHAR}, #{waiver,jdbcType=TINYINT})
#{waiver,jdbcType=TINYINT}, #{remark,jdbcType=VARCHAR}, #{createdAt,jdbcType=TIMESTAMP},
#{updatedAt,jdbcType=TIMESTAMP}, #{recStatus,jdbcType=TINYINT})
</insert>
<insert id="insertSelective" parameterType="com.ccsens.mt.bean.po.CompeteStartOrder">
insert into t_compete_start_order
@ -142,15 +142,6 @@
<if test="site != null">
site,
</if>
<if test="createdAt != null">
created_at,
</if>
<if test="updatedAt != null">
updated_at,
</if>
<if test="recStatus != null">
rec_status,
</if>
<if test="taskId != null">
task_id,
</if>
@ -160,11 +151,20 @@
<if test="endTime != null">
end_time,
</if>
<if test="waiver != null">
waiver,
</if>
<if test="remark != null">
remark,
</if>
<if test="waiver != null">
waiver,
<if test="createdAt != null">
created_at,
</if>
<if test="updatedAt != null">
updated_at,
</if>
<if test="recStatus != null">
rec_status,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
@ -181,20 +181,11 @@
#{team,jdbcType=TINYINT},
</if>
<if test="competeOrder != null">
#{competeOrder,jdbcType=TINYINT},
#{competeOrder,jdbcType=INTEGER},
</if>
<if test="site != null">
#{site,jdbcType=TINYINT},
</if>
<if test="createdAt != null">
#{createdAt,jdbcType=TIMESTAMP},
</if>
<if test="updatedAt != null">
#{updatedAt,jdbcType=TIMESTAMP},
</if>
<if test="recStatus != null">
#{recStatus,jdbcType=TINYINT},
</if>
<if test="taskId != null">
#{taskId,jdbcType=BIGINT},
</if>
@ -204,11 +195,20 @@
<if test="endTime != null">
#{endTime,jdbcType=BIGINT},
</if>
<if test="waiver != null">
#{waiver,jdbcType=TINYINT},
</if>
<if test="remark != null">
#{remark,jdbcType=VARCHAR},
</if>
<if test="waiver != null">
#{waiver,jdbcType=TINYINT},
<if test="createdAt != null">
#{createdAt,jdbcType=TIMESTAMP},
</if>
<if test="updatedAt != null">
#{updatedAt,jdbcType=TIMESTAMP},
</if>
<if test="recStatus != null">
#{recStatus,jdbcType=TINYINT},
</if>
</trim>
</insert>
@ -234,20 +234,11 @@
team = #{record.team,jdbcType=TINYINT},
</if>
<if test="record.competeOrder != null">
compete_order = #{record.competeOrder,jdbcType=TINYINT},
compete_order = #{record.competeOrder,jdbcType=INTEGER},
</if>
<if test="record.site != null">
site = #{record.site,jdbcType=TINYINT},
</if>
<if test="record.createdAt != null">
created_at = #{record.createdAt,jdbcType=TIMESTAMP},
</if>
<if test="record.updatedAt != null">
updated_at = #{record.updatedAt,jdbcType=TIMESTAMP},
</if>
<if test="record.recStatus != null">
rec_status = #{record.recStatus,jdbcType=TINYINT},
</if>
<if test="record.taskId != null">
task_id = #{record.taskId,jdbcType=BIGINT},
</if>
@ -257,11 +248,20 @@
<if test="record.endTime != null">
end_time = #{record.endTime,jdbcType=BIGINT},
</if>
<if test="record.waiver != null">
waiver = #{record.waiver,jdbcType=TINYINT},
</if>
<if test="record.remark != null">
remark = #{record.remark,jdbcType=VARCHAR},
</if>
<if test="record.waiver != null">
waiver = #{record.waiver,jdbcType=TINYINT},
<if test="record.createdAt != null">
created_at = #{record.createdAt,jdbcType=TIMESTAMP},
</if>
<if test="record.updatedAt != null">
updated_at = #{record.updatedAt,jdbcType=TIMESTAMP},
</if>
<if test="record.recStatus != null">
rec_status = #{record.recStatus,jdbcType=TINYINT},
</if>
</set>
<if test="_parameter != null">
@ -274,16 +274,16 @@
project_id = #{record.projectId,jdbcType=BIGINT},
player_id = #{record.playerId,jdbcType=BIGINT},
team = #{record.team,jdbcType=TINYINT},
compete_order = #{record.competeOrder,jdbcType=TINYINT},
compete_order = #{record.competeOrder,jdbcType=INTEGER},
site = #{record.site,jdbcType=TINYINT},
created_at = #{record.createdAt,jdbcType=TIMESTAMP},
updated_at = #{record.updatedAt,jdbcType=TIMESTAMP},
rec_status = #{record.recStatus,jdbcType=TINYINT},
task_id = #{record.taskId,jdbcType=BIGINT},
start_time = #{record.startTime,jdbcType=BIGINT},
end_time = #{record.endTime,jdbcType=BIGINT},
waiver = #{record.waiver,jdbcType=TINYINT},
remark = #{record.remark,jdbcType=VARCHAR},
waiver = #{record.waiver,jdbcType=TINYINT}
created_at = #{record.createdAt,jdbcType=TIMESTAMP},
updated_at = #{record.updatedAt,jdbcType=TIMESTAMP},
rec_status = #{record.recStatus,jdbcType=TINYINT}
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
@ -301,20 +301,11 @@
team = #{team,jdbcType=TINYINT},
</if>
<if test="competeOrder != null">
compete_order = #{competeOrder,jdbcType=TINYINT},
compete_order = #{competeOrder,jdbcType=INTEGER},
</if>
<if test="site != null">
site = #{site,jdbcType=TINYINT},
</if>
<if test="createdAt != null">
created_at = #{createdAt,jdbcType=TIMESTAMP},
</if>
<if test="updatedAt != null">
updated_at = #{updatedAt,jdbcType=TIMESTAMP},
</if>
<if test="recStatus != null">
rec_status = #{recStatus,jdbcType=TINYINT},
</if>
<if test="taskId != null">
task_id = #{taskId,jdbcType=BIGINT},
</if>
@ -324,11 +315,20 @@
<if test="endTime != null">
end_time = #{endTime,jdbcType=BIGINT},
</if>
<if test="waiver != null">
waiver = #{waiver,jdbcType=TINYINT},
</if>
<if test="remark != null">
remark = #{remark,jdbcType=VARCHAR},
</if>
<if test="waiver != null">
waiver = #{waiver,jdbcType=TINYINT},
<if test="createdAt != null">
created_at = #{createdAt,jdbcType=TIMESTAMP},
</if>
<if test="updatedAt != null">
updated_at = #{updatedAt,jdbcType=TIMESTAMP},
</if>
<if test="recStatus != null">
rec_status = #{recStatus,jdbcType=TINYINT},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
@ -338,16 +338,16 @@
set project_id = #{projectId,jdbcType=BIGINT},
player_id = #{playerId,jdbcType=BIGINT},
team = #{team,jdbcType=TINYINT},
compete_order = #{competeOrder,jdbcType=TINYINT},
compete_order = #{competeOrder,jdbcType=INTEGER},
site = #{site,jdbcType=TINYINT},
created_at = #{createdAt,jdbcType=TIMESTAMP},
updated_at = #{updatedAt,jdbcType=TIMESTAMP},
rec_status = #{recStatus,jdbcType=TINYINT},
task_id = #{taskId,jdbcType=BIGINT},
start_time = #{startTime,jdbcType=BIGINT},
end_time = #{endTime,jdbcType=BIGINT},
waiver = #{waiver,jdbcType=TINYINT},
remark = #{remark,jdbcType=VARCHAR},
waiver = #{waiver,jdbcType=TINYINT}
created_at = #{createdAt,jdbcType=TIMESTAMP},
updated_at = #{updatedAt,jdbcType=TIMESTAMP},
rec_status = #{recStatus,jdbcType=TINYINT}
where id = #{id,jdbcType=BIGINT}
</update>
</mapper>

7
tall/src/main/java/com/ccsens/tall/bean/dto/ProjectDto.java

@ -156,4 +156,11 @@ public class ProjectDto {
@ApiModelProperty("标签id")
private List<Long> labelList;
}
@Data
@ApiModel("项目转模板")
public static class ProjectToTemplate{
@ApiModelProperty("项目id")
private Long projectId;
}
}

12
tall/src/main/java/com/ccsens/tall/bean/dto/TaskDto.java

@ -49,6 +49,12 @@ public class TaskDto {
private String milestone;
@ApiModelProperty("任务提醒消息")
private TaskRemindByAdd taskRemind;
@ApiModelProperty("上级任务详情id")
private Long lastTaskDetailId;
@ApiModelProperty("上级提醒类型(0不提醒 1开始前,2开始时,3开始后,4结束前,5结束时,6结束后,7自定义时间)")
private Byte lastType;
@ApiModelProperty("两个任务时间差")
private Long timeDifference;
}
@ApiModel("批量添加任务")
@ -229,6 +235,12 @@ public class TaskDto {
private Long parentId;
@ApiModelProperty("所属项目id")
private Long projectId;
@ApiModelProperty("上级任务详情id")
private Long lastTaskDetailId;
@ApiModelProperty("上级提醒类型(0不提醒 1开始前,2开始时,3开始后,4结束前,5结束时,6结束后,7自定义时间)")
private Byte lastType;
@ApiModelProperty("两个任务时间差")
private Long timeDifference;
}
@Data
@ApiModel("修改任务时修改交付物名称")

33
tall/src/main/java/com/ccsens/tall/bean/po/ProTaskDetail.java

@ -62,6 +62,12 @@ public class ProTaskDetail implements Serializable {
private Long buildUser;
private Long lastTaskDetailId;
private Byte lastType;
private Long timeDifference;
private static final long serialVersionUID = 1L;
public Long getId() {
@ -296,6 +302,30 @@ public class ProTaskDetail implements Serializable {
this.buildUser = buildUser;
}
public Long getLastTaskDetailId() {
return lastTaskDetailId;
}
public void setLastTaskDetailId(Long lastTaskDetailId) {
this.lastTaskDetailId = lastTaskDetailId;
}
public Byte getLastType() {
return lastType;
}
public void setLastType(Byte lastType) {
this.lastType = lastType;
}
public Long getTimeDifference() {
return timeDifference;
}
public void setTimeDifference(Long timeDifference) {
this.timeDifference = timeDifference;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
@ -331,6 +361,9 @@ public class ProTaskDetail implements Serializable {
sb.append(", priority=").append(priority);
sb.append(", milestone=").append(milestone);
sb.append(", buildUser=").append(buildUser);
sb.append(", lastTaskDetailId=").append(lastTaskDetailId);
sb.append(", lastType=").append(lastType);
sb.append(", timeDifference=").append(timeDifference);
sb.append("]");
return sb.toString();
}

180
tall/src/main/java/com/ccsens/tall/bean/po/ProTaskDetailExample.java

@ -1904,6 +1904,186 @@ public class ProTaskDetailExample {
addCriterion("build_user not between", value1, value2, "buildUser");
return (Criteria) this;
}
public Criteria andLastTaskDetailIdIsNull() {
addCriterion("last_task_detail_id is null");
return (Criteria) this;
}
public Criteria andLastTaskDetailIdIsNotNull() {
addCriterion("last_task_detail_id is not null");
return (Criteria) this;
}
public Criteria andLastTaskDetailIdEqualTo(Long value) {
addCriterion("last_task_detail_id =", value, "lastTaskDetailId");
return (Criteria) this;
}
public Criteria andLastTaskDetailIdNotEqualTo(Long value) {
addCriterion("last_task_detail_id <>", value, "lastTaskDetailId");
return (Criteria) this;
}
public Criteria andLastTaskDetailIdGreaterThan(Long value) {
addCriterion("last_task_detail_id >", value, "lastTaskDetailId");
return (Criteria) this;
}
public Criteria andLastTaskDetailIdGreaterThanOrEqualTo(Long value) {
addCriterion("last_task_detail_id >=", value, "lastTaskDetailId");
return (Criteria) this;
}
public Criteria andLastTaskDetailIdLessThan(Long value) {
addCriterion("last_task_detail_id <", value, "lastTaskDetailId");
return (Criteria) this;
}
public Criteria andLastTaskDetailIdLessThanOrEqualTo(Long value) {
addCriterion("last_task_detail_id <=", value, "lastTaskDetailId");
return (Criteria) this;
}
public Criteria andLastTaskDetailIdIn(List<Long> values) {
addCriterion("last_task_detail_id in", values, "lastTaskDetailId");
return (Criteria) this;
}
public Criteria andLastTaskDetailIdNotIn(List<Long> values) {
addCriterion("last_task_detail_id not in", values, "lastTaskDetailId");
return (Criteria) this;
}
public Criteria andLastTaskDetailIdBetween(Long value1, Long value2) {
addCriterion("last_task_detail_id between", value1, value2, "lastTaskDetailId");
return (Criteria) this;
}
public Criteria andLastTaskDetailIdNotBetween(Long value1, Long value2) {
addCriterion("last_task_detail_id not between", value1, value2, "lastTaskDetailId");
return (Criteria) this;
}
public Criteria andLastTypeIsNull() {
addCriterion("last_type is null");
return (Criteria) this;
}
public Criteria andLastTypeIsNotNull() {
addCriterion("last_type is not null");
return (Criteria) this;
}
public Criteria andLastTypeEqualTo(Byte value) {
addCriterion("last_type =", value, "lastType");
return (Criteria) this;
}
public Criteria andLastTypeNotEqualTo(Byte value) {
addCriterion("last_type <>", value, "lastType");
return (Criteria) this;
}
public Criteria andLastTypeGreaterThan(Byte value) {
addCriterion("last_type >", value, "lastType");
return (Criteria) this;
}
public Criteria andLastTypeGreaterThanOrEqualTo(Byte value) {
addCriterion("last_type >=", value, "lastType");
return (Criteria) this;
}
public Criteria andLastTypeLessThan(Byte value) {
addCriterion("last_type <", value, "lastType");
return (Criteria) this;
}
public Criteria andLastTypeLessThanOrEqualTo(Byte value) {
addCriterion("last_type <=", value, "lastType");
return (Criteria) this;
}
public Criteria andLastTypeIn(List<Byte> values) {
addCriterion("last_type in", values, "lastType");
return (Criteria) this;
}
public Criteria andLastTypeNotIn(List<Byte> values) {
addCriterion("last_type not in", values, "lastType");
return (Criteria) this;
}
public Criteria andLastTypeBetween(Byte value1, Byte value2) {
addCriterion("last_type between", value1, value2, "lastType");
return (Criteria) this;
}
public Criteria andLastTypeNotBetween(Byte value1, Byte value2) {
addCriterion("last_type not between", value1, value2, "lastType");
return (Criteria) this;
}
public Criteria andTimeDifferenceIsNull() {
addCriterion("time_difference is null");
return (Criteria) this;
}
public Criteria andTimeDifferenceIsNotNull() {
addCriterion("time_difference is not null");
return (Criteria) this;
}
public Criteria andTimeDifferenceEqualTo(Long value) {
addCriterion("time_difference =", value, "timeDifference");
return (Criteria) this;
}
public Criteria andTimeDifferenceNotEqualTo(Long value) {
addCriterion("time_difference <>", value, "timeDifference");
return (Criteria) this;
}
public Criteria andTimeDifferenceGreaterThan(Long value) {
addCriterion("time_difference >", value, "timeDifference");
return (Criteria) this;
}
public Criteria andTimeDifferenceGreaterThanOrEqualTo(Long value) {
addCriterion("time_difference >=", value, "timeDifference");
return (Criteria) this;
}
public Criteria andTimeDifferenceLessThan(Long value) {
addCriterion("time_difference <", value, "timeDifference");
return (Criteria) this;
}
public Criteria andTimeDifferenceLessThanOrEqualTo(Long value) {
addCriterion("time_difference <=", value, "timeDifference");
return (Criteria) this;
}
public Criteria andTimeDifferenceIn(List<Long> values) {
addCriterion("time_difference in", values, "timeDifference");
return (Criteria) this;
}
public Criteria andTimeDifferenceNotIn(List<Long> values) {
addCriterion("time_difference not in", values, "timeDifference");
return (Criteria) this;
}
public Criteria andTimeDifferenceBetween(Long value1, Long value2) {
addCriterion("time_difference between", value1, value2, "timeDifference");
return (Criteria) this;
}
public Criteria andTimeDifferenceNotBetween(Long value1, Long value2) {
addCriterion("time_difference not between", value1, value2, "timeDifference");
return (Criteria) this;
}
}
public static class Criteria extends GeneratedCriteria {

9
tall/src/main/java/com/ccsens/tall/persist/dao/ProMemberRoleShowDao.java

@ -0,0 +1,9 @@
package com.ccsens.tall.persist.dao;
import com.ccsens.tall.persist.mapper.ProMemberRoleShowMapper;
/**
* @author
*/
public interface ProMemberRoleShowDao extends ProMemberRoleShowMapper {
}

16
tall/src/main/java/com/ccsens/tall/service/IProjectService.java

@ -3,6 +3,7 @@ package com.ccsens.tall.service;
import com.ccsens.tall.bean.dto.ProjectDto;
import com.ccsens.tall.bean.po.SysProject;
import com.ccsens.tall.bean.vo.ProjectVo;
import com.ccsens.util.bean.dto.QueryDto;
import java.util.List;
@ -56,4 +57,19 @@ public interface IProjectService {
* @return 返回项目信息
*/
ProjectVo.ProjectInfo createProject(Long currentUserId,ProjectDto.CreateProject createProject,String token);
/**
* 项目转模板
* @param param 项目id
* @param userId 当前用户id
*/
void projectToTemplate(ProjectDto.ProjectToTemplate param, Long userId);
/**
* 根据模板复制项目
* @param param 项目id
* @param userId 当前用户id
* @return 复制成功的项目
*/
ProjectVo.ProjectInfo copyProjectNew(ProjectDto.ProjectIdDto param, Long userId);
}

39
tall/src/main/java/com/ccsens/tall/service/ProMemberService.java

@ -358,9 +358,20 @@ public class ProMemberService implements IProMemberService {
if (ObjectUtil.isNull(proMember)) {
throw new BaseException(CodeEnum.NOT_MEMBER);
}
//该成员是项目经理,且项目经理下只有他一个成员的时候,不能删除
List<Long> pmId = proRoleDao.getPmByByProjectId(proMember.getProjectId());
if(CollectionUtil.isNotEmpty(pmId)){
ProMemberRoleExample memberRoleExample = new ProMemberRoleExample();
memberRoleExample.createCriteria().andRoleIdEqualTo(pmId.get(0)).andMemberIdEqualTo(deleteMember.getMemberId());
long l = proMemberRoleDao.countByExample(memberRoleExample);
if(l == 1){
throw new BaseException(CodeEnum.PM_NOT_MEMBER);
}
}
//检查操作者的权限
int power = proRoleService.selectPowerByRoleName(currentUserId, proMember.getProjectId());
if (power < 2) {
if (power < WebConstant.ROLE_POWER.OPERATION_POWER.value) {
throw new BaseException(CodeEnum.NOT_POWER);
}
@ -381,8 +392,12 @@ public class ProMemberService implements IProMemberService {
});
}
//删除成员关注项目的信息
deleteAttention(proMember.getUserId(),proMember.getProjectId());
}
private void deleteAttention(Long userId, Long projectId) {
UserAttentionExample userAttentionExample = new UserAttentionExample();
userAttentionExample.createCriteria().andUserIdEqualTo(proMember.getUserId()).andProjectIdEqualTo(proMember.getProjectId());
userAttentionExample.createCriteria().andUserIdEqualTo(userId).andProjectIdEqualTo(projectId);
List<UserAttention> userAttentionList = userAttentionDao.selectByExample(userAttentionExample);
if (CollectionUtil.isNotEmpty(userAttentionList)) {
userAttentionList.forEach(userAttention -> {
@ -408,7 +423,25 @@ public class ProMemberService implements IProMemberService {
proMember.setNickname(updateMemberInfo.getMemberName());
}
if (StrUtil.isNotEmpty(updateMemberInfo.getPhone())) {
proMember.setPhone(updateMemberInfo.getPhone());
//如果手机号和旧手机号相同则不修改
if(!proMember.getPhone().equalsIgnoreCase(updateMemberInfo.getPhone())){
//查找原来手机号的用户,取消关联项目的信息
deleteAttention(proMember.getUserId(),proMember.getProjectId());
//获取新手机号的userId
Long userId = userService.selectUserIdByPhone(updateMemberInfo.getPhone());
//修改成员手机号和关联的userId
proMember.setPhone(updateMemberInfo.getPhone());
proMember.setUserId(0L);
if(ObjectUtil.isNotNull(userId)){
proMember.setUserId(userId);
//新成员的用户关注该项目
UserAttention userAttention = new UserAttention();
userAttention.setId(snowflake.nextId());
userAttention.setUserId(userId);
userAttention.setProjectId(proMember.getProjectId());
userAttentionDao.insertSelective(userAttention);
}
}
}
//修改奖惩干系人
Long stakeholderId = null;

3
tall/src/main/java/com/ccsens/tall/service/ProRoleService.java

@ -680,6 +680,9 @@ public class ProRoleService implements IProRoleService {
}
//检查角色是否为PM 是的话则需要更高权限
boolean isPm = isPmByRoleId(saveMember.getRoleId());
if(isPm && CollectionUtil.isEmpty(saveMember.getMemberId())){
throw new BaseException(CodeEnum.PM_NOT_MEMBER);
}
//检查当前用户的权限是否可以修改
int power = selectPowerByRoleName(currentUserId, role.getProjectId());
if ((isPm && power < WebConstant.ROLE_POWER.ADMIN_POWER.value) || (!isPm && power < WebConstant.ROLE_POWER.OPERATION_POWER.value)) {

27
tall/src/main/java/com/ccsens/tall/service/ProTaskDetailService.java

@ -947,6 +947,18 @@ public class ProTaskDetailService implements IProTaskDetailService {
taskDetail.setParentName(parentTask.getName());
}
}
//查找任务是否有webPath
ProPluginConfigExample pluginConfigExample = new ProPluginConfigExample();
pluginConfigExample.createCriteria().andTaskIdEqualTo(taskDetail.getDetailId());
List<ProPluginConfig> proPluginConfigs = pluginConfigDao.selectByExample(pluginConfigExample);
if(CollectionUtil.isNotEmpty(proPluginConfigs)){
for (ProPluginConfig pluginConfig : proPluginConfigs) {
taskDetail.setWebPath(pluginConfig.getWebPath());
taskDetail.setRoutineLocation(pluginConfig.getRoutineLocation());
taskDetail.setImportParam(pluginConfig.getImportParam());
}
}
}
return taskDetail;
@ -1503,9 +1515,8 @@ public class ProTaskDetailService implements IProTaskDetailService {
taskDetail.setName(updateTaskInfo.getName());
}
//详情
if (StrUtil.isNotEmpty(updateTaskInfo.getDescription())) {
taskDetail.setDescription(updateTaskInfo.getDescription());
}
taskDetail.setDescription(updateTaskInfo.getDescription());
//负责人
if (ObjectUtil.isNotNull(updateTaskInfo.getExecutorRole())) {
taskDetail.setExecutorRole(updateTaskInfo.getExecutorRole());
@ -1531,7 +1542,15 @@ public class ProTaskDetailService implements IProTaskDetailService {
if (ObjectUtil.isNotNull(updateTaskInfo.getMilestone())) {
taskDetail.setMilestone(updateTaskInfo.getMilestone());
}
if (ObjectUtil.isNotNull(updateTaskInfo.getLastTaskDetailId())){
taskDetail.setLastTaskDetailId(updateTaskInfo.getLastTaskDetailId());
}
if(ObjectUtil.isNotNull(updateTaskInfo.getLastType())){
taskDetail.setLastType(updateTaskInfo.getLastType());
}
if (ObjectUtil.isNotNull(updateTaskInfo.getTimeDifference())){
taskDetail.setTimeDifference(updateTaskInfo.getTimeDifference());
}
// //父任务id
// if(null != updateTaskInfo.getParentId()){

265
tall/src/main/java/com/ccsens/tall/service/ProjectService.java

@ -3,7 +3,6 @@ package com.ccsens.tall.service;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.lang.Snowflake;
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.ccsens.tall.bean.dto.MemberRoleDto;
@ -47,6 +46,8 @@ public class ProjectService implements IProjectService {
@Resource
private ProMemberRoleDao memberRoleDao;
@Resource
private ProMemberRoleShowDao memberRoleShowDao;
@Resource
private TaskDetailDao taskDetailDao;
@Resource
private TaskSubTimeDao taskSubTimeDao;
@ -55,8 +56,12 @@ public class ProjectService implements IProjectService {
@Resource
private TaskPluginDao pluginDao;
@Resource
private ProPluginConfigDao pluginConfigDao;
@Resource
private TaskDeliverDao taskDeliverDao;
@Resource
private ProTaskInputDocDao taskInputDocDao;
@Resource
private IProRoleService proRoleService;
@Resource
private Snowflake snowflake;
@ -82,6 +87,8 @@ public class ProjectService implements IProjectService {
private SysProjectLabelDao sysProjectLabelDao;
@Resource
private RobotService robotService;
@Resource
private ProRemindDao remindDao;
@Override
@ -632,6 +639,7 @@ public class ProjectService implements IProjectService {
newProject.setName(oldProject.getName() + "-副本");
newProject.setTemplate((byte) 0);
saveProject(newProject);
//该用户关注新项目
UserAttention userAttention = new UserAttention();
userAttention.setId(snowflake.nextId());
@ -713,7 +721,7 @@ public class ProjectService implements IProjectService {
}
//添加对谁不可见
copyRoleExclude(oldRoleList, oldRoleMap, newRoleMap);
//复制任务
//复制任务(包括分解任务)
copyTask(oldProjectId, newProjectId, oldRoleMap, newRoleMap);
}
}
@ -738,9 +746,15 @@ public class ProjectService implements IProjectService {
}
/**
* 复制任务
* 复制任务插件插件配置和交付物任务配置
*/
private void copyTask(Long oldProjectId, Long newProjectId, Map<Long, String> oldRoleMap, Map<String, Long> newRoleMap) {
Map<Long,Long> oldIdAndNewId = new HashMap<>();
SysProject oldProject = sysProjectDao.selectByPrimaryKey(oldProjectId);
SysProject newProject = sysProjectDao.selectByPrimaryKey(newProjectId);
//两个项目的时间差
long timeDifference = newProject.getBeginTime() - oldProject.getBeginTime();
ProTaskDetailExample detailExample = new ProTaskDetailExample();
detailExample.createCriteria().andProjectIdEqualTo(oldProjectId).andLevelEqualTo((byte) 1);
List<ProTaskDetail> detailList = taskDetailDao.selectByExample(detailExample);
@ -750,11 +764,19 @@ public class ProjectService implements IProjectService {
BeanUtil.copyProperties(oldDetail, newDetail);
newDetail.setId(snowflake.nextId());
newDetail.setProjectId(newProjectId);
//设置任务的时间
newDetail.setBeginTime(newDetail.getBeginTime()+timeDifference);
newDetail.setEndTime(newDetail.getEndTime()+timeDifference);
newDetail.setCreatedAt(null);
newDetail.setUpdatedAt(null);
newDetail.setExecutorRole(newRoleMap.get(oldRoleMap.get(newDetail.getExecutorRole())));
if (newDetail.getCheckerRole() != 0) {
newDetail.setCheckerRole(newRoleMap.get(oldRoleMap.get(newDetail.getCheckerRole())));
}
taskDetailDao.insertSelective(newDetail);
oldIdAndNewId.put(oldDetail.getId(),newDetail.getId());
//复制分解任务
copyTaskSubTime(timeDifference,newDetail.getId(),oldDetail.getId());
//查找一级任务下的二级任务
ProTaskDetailExample oldSecondTask = new ProTaskDetailExample();
oldSecondTask.createCriteria().andParentIdEqualTo(oldDetail.getId()).andLevelEqualTo((byte) 2);
@ -770,9 +792,17 @@ public class ProjectService implements IProjectService {
if (newSecondDetail.getCheckerRole() != 0) {
newSecondDetail.setCheckerRole(newRoleMap.get(oldRoleMap.get(newSecondDetail.getCheckerRole())));
}
//设置任务的时间
newSecondDetail.setBeginTime(newDetail.getBeginTime()+timeDifference);
newSecondDetail.setEndTime(newDetail.getEndTime()+timeDifference);
newSecondDetail.setCreatedAt(null);
newSecondDetail.setUpdatedAt(null);
taskDetailDao.insertSelective(newSecondDetail);
oldIdAndNewId.put(oldSecondDetail.getId(),newSecondDetail.getId());
//复制分解任务
copyTaskSubTime(timeDifference,newSecondDetail.getId(),oldSecondDetail.getId());
//分解时间
taskToSubTime(newSecondDetail);
//taskToSubTime(newSecondDetail);
//查找二级任务的子任务
ProTaskDetailExample oldSubTask = new ProTaskDetailExample();
oldSubTask.createCriteria().andParentIdEqualTo(oldSecondDetail.getId()).andLevelEqualTo((byte) 3);
@ -788,18 +818,72 @@ public class ProjectService implements IProjectService {
if (newSubDetail.getCheckerRole() != 0) {
newSubDetail.setCheckerRole(newRoleMap.get(oldRoleMap.get(newSubDetail.getCheckerRole())));
}
//设置任务的时间
newSubDetail.setBeginTime(newDetail.getBeginTime()+timeDifference);
newSubDetail.setEndTime(newDetail.getEndTime()+timeDifference);
newSubDetail.setCreatedAt(null);
newSubDetail.setUpdatedAt(null);
taskDetailDao.insertSelective(newSubDetail);
oldIdAndNewId.put(oldSubDetail.getId(),newSubDetail.getId());
//复制分解任务
copyTaskSubTime(timeDifference,newSubDetail.getId(),oldSubDetail.getId());
//分解时间
taskToSubTime(newSubDetail);
copyPluginAndDeliver(oldDetail.getId(), newDetail.getId(), oldRoleMap, newRoleMap);
//taskToSubTime(newSubDetail);
//复制插件、插件配置和交付物
copyPluginAndDeliver(oldSubDetail.getId(), newSubDetail.getId(), oldRoleMap, newRoleMap,oldIdAndNewId,newProjectId);
copyTaskConfig(oldSubDetail.getId(),newSubDetail.getId(),oldProjectId,newProjectId);
}
}
copyPluginAndDeliver(oldDetail.getId(), newDetail.getId(), oldRoleMap, newRoleMap);
copyTaskConfig(oldDetail.getId(),newDetail.getId(),oldProjectId,newProjectId);
copyPluginAndDeliver(oldSecondDetail.getId(), newSecondDetail.getId(), oldRoleMap, newRoleMap,oldIdAndNewId,newProjectId);
copyTaskConfig(oldSecondDetail.getId(),newSecondDetail.getId(),oldProjectId,newProjectId);
}
}
copyPluginAndDeliver(oldDetail.getId(), newDetail.getId(), oldRoleMap, newRoleMap);
copyPluginAndDeliver(oldDetail.getId(), newDetail.getId(), oldRoleMap, newRoleMap,oldIdAndNewId,newProjectId);
copyTaskConfig(oldDetail.getId(),newDetail.getId(),oldProjectId,newProjectId);
}
}
}
/**
* 复制分解任务和任务提示信息
* @param newTaskDetailId 新的详情任务
* @param timeDifference 时间差
*/
public void copyTaskSubTime(Long timeDifference,Long newTaskDetailId,Long oldTaskDetailId){
Map<Long,Long> oldTaskSubIdAndNewId = new HashMap<>();
//复制分解任务
ProTaskSubTimeExample proTaskSubTimeExample = new ProTaskSubTimeExample();
proTaskSubTimeExample.createCriteria().andTaskDetailIdEqualTo(oldTaskDetailId);
List<ProTaskSubTime> oldTaskSubTimes = taskSubTimeDao.selectByExample(proTaskSubTimeExample);
if (CollectionUtil.isNotEmpty(oldTaskSubTimes)){
for (ProTaskSubTime oldTaskSubTime : oldTaskSubTimes) {
ProTaskSubTime newTaskSubTime = new ProTaskSubTime();
BeanUtil.copyProperties(oldTaskSubTime,newTaskSubTime);
newTaskSubTime.setId(snowflake.nextId());
newTaskSubTime.setTaskDetailId(newTaskDetailId);
newTaskSubTime.setBeginTime(oldTaskSubTime.getBeginTime()+timeDifference);
newTaskSubTime.setEndTime(oldTaskSubTime.getEndTime()+timeDifference);
newTaskSubTime.setCreatedAt(null);
newTaskSubTime.setUpdatedAt(null);
taskSubTimeDao.insertSelective(newTaskSubTime);
oldTaskSubIdAndNewId.put(oldTaskSubTime.getId(),newTaskSubTime.getId());
//复制任务提示信息
ProRemindExample remindExample = new ProRemindExample();
remindExample.createCriteria().andSubTaskIdEqualTo(oldTaskSubTime.getId());
List<ProRemind> proReminds = remindDao.selectByExample(remindExample);
if (CollectionUtil.isNotEmpty(proReminds)){
for (ProRemind oldRemind : proReminds) {
ProRemind newRemind = new ProRemind();
BeanUtil.copyProperties(oldRemind,newRemind);
newRemind.setId(snowflake.nextId());
newRemind.setSubTaskId(oldTaskSubIdAndNewId.get(oldTaskSubTime.getId()));
newRemind.setCreatedAt(null);
newRemind.setUpdatedAt(null);
remindDao.insertSelective(newRemind);
}
}
}
}
}
@ -860,9 +944,10 @@ public class ProjectService implements IProjectService {
}
/**
* 复制插件和交付物
* 复制插件·插件配置和交付物
*/
private void copyPluginAndDeliver(Long oldTaskId, Long newTaskId, Map<Long, String> oldRoleMap, Map<String, Long> newRoleMap) {
private void copyPluginAndDeliver(Long oldTaskId, Long newTaskId, Map<Long, String> oldRoleMap, Map<String, Long> newRoleMap,Map<Long,Long> oldTaskIdAndNewId,Long projectId) {
Map<Long,Long> oldPluginIdAndNewId = new HashMap<>();
//插件
ProTaskPluginExample pluginExample = new ProTaskPluginExample();
pluginExample.createCriteria().andTaskDetailIdEqualTo(oldTaskId);
@ -874,10 +959,34 @@ public class ProjectService implements IProjectService {
newPlugin.setId(snowflake.nextId());
newPlugin.setTaskDetailId(newTaskId);
newPlugin.setMemberRoleId(newRoleMap.get(oldRoleMap.get(newPlugin.getMemberRoleId())));
newPlugin.setCreatedAt(null);
newPlugin.setUpdatedAt(null);
pluginDao.insertSelective(newPlugin);
oldPluginIdAndNewId.put(plugin.getId(),newPlugin.getId());
}
}
//插件配置表
ProPluginConfigExample pluginConfigExample = new ProPluginConfigExample();
pluginConfigExample.createCriteria().andTaskIdEqualTo(oldTaskId);
List<ProPluginConfig> oldPluginConfigs = pluginConfigDao.selectByExample(pluginConfigExample);
if (CollectionUtil.isNotEmpty(oldPluginConfigs)){
for (ProPluginConfig oldPluginConfig : oldPluginConfigs) {
ProPluginConfig newPluginConfig = new ProPluginConfig();
BeanUtil.copyProperties(oldPluginConfig,newPluginConfig);
newPluginConfig.setId(snowflake.nextId());
if (0 != newPluginConfig.getTaskId()){
newPluginConfig.setTaskId(oldTaskIdAndNewId.get(oldTaskId));
}
newPluginConfig.setPluginId(oldPluginIdAndNewId.get(oldPluginConfig.getPluginId()));
newPluginConfig.setCreatedAt(null);
newPluginConfig.setUpdatedAt(null);
pluginConfigDao.insertSelective(newPluginConfig);
}
}
//交付物
//输出文档
ProTaskDeliverExample deliverExample = new ProTaskDeliverExample();
deliverExample.createCriteria().andTaskDetailIdEqualTo(oldTaskId);
List<ProTaskDeliver> proTaskDeliverList = taskDeliverDao.selectByExample(deliverExample);
@ -889,9 +998,26 @@ public class ProjectService implements IProjectService {
newTaskDeliver.setTaskDetailId(newTaskId);
newTaskDeliver.setCheckStatus(0);
newTaskDeliver.setIsUpload(0);
newTaskDeliver.setCreatedAt(null);
newTaskDeliver.setUpdatedAt(null);
taskDeliverDao.insertSelective(newTaskDeliver);
}
}
//输入文档
ProTaskInputDocExample taskInputDocExample = new ProTaskInputDocExample();
taskInputDocExample.createCriteria().andTaskDetailIdEqualTo(oldTaskId);
List<ProTaskInputDoc> oldTaskInputDocs = taskInputDocDao.selectByExample(taskInputDocExample);
if (CollectionUtil.isNotEmpty(oldTaskInputDocs)){
for (ProTaskInputDoc oldTaskInputDoc : oldTaskInputDocs) {
ProTaskInputDoc newTaskInputDoc = new ProTaskInputDoc();
BeanUtil.copyProperties(oldTaskInputDoc,newTaskInputDoc);
newTaskInputDoc.setId(snowflake.nextId());
newTaskInputDoc.setIsUpload(0);
newTaskInputDoc.setCreatedAt(null);
newTaskInputDoc.setUpdatedAt(null);
taskInputDocDao.insertSelective(newTaskInputDoc);
}
}
}
/**
@ -1248,4 +1374,121 @@ public class ProjectService implements IProjectService {
}
return getProjectInfoById(currentUserId,sysProject.getId(),token);
}
/**
* 项目转模板
* @param param 项目id
* @param userId 当前用户id
*/
@Override
public void projectToTemplate(ProjectDto.ProjectToTemplate param, Long userId) {
//用户在项目中的最高权限
int power = proRoleService.selectPowerByRoleName(userId, param.getProjectId());
if (WebConstant.ROLE_POWER.OPERATION_POWER.value < power){
SysProject sysProject = sysProjectDao.selectByPrimaryKey(param.getProjectId());
//将项目改为模板项目
sysProject.setTemplate((byte)1);
sysProjectDao.insertSelective(sysProject);
//查找成员相关-删除
//1.查找项目下成员
ProMemberExample proMemberExample = new ProMemberExample();
proMemberExample.createCriteria().andProjectIdEqualTo(param.getProjectId());
List<ProMember> proMembers = proMemberDao.selectByExample(proMemberExample);
for (ProMember proMember : proMembers) {
proMember.setRecStatus(WebConstant.REC_STATUS.Deleted.value);
proMemberDao.updateByPrimaryKeySelective(proMember);
//2.删除成角色下的成员
ProMemberRoleExample proMemberRoleExample = new ProMemberRoleExample();
proMemberRoleExample.createCriteria().andMemberIdEqualTo(proMember.getId());
List<ProMemberRole> proMemberRoles = memberRoleDao.selectByExample(proMemberRoleExample);
proMemberRoles.forEach(proMemberRole -> {
proMemberRole.setRecStatus(WebConstant.REC_STATUS.Deleted.value);
memberRoleDao.updateByPrimaryKeySelective(proMemberRole);
});
//3.删除成员角色展示表中的相关数据
ProMemberRoleShowExample proMemberRoleShowExample = new ProMemberRoleShowExample();
proMemberRoleShowExample.createCriteria().andMemberIdEqualTo(proMember.getId());
List<ProMemberRoleShow> proMemberRoleShows = memberRoleShowDao.selectByExample(proMemberRoleShowExample);
for (ProMemberRoleShow proMemberRoleShow : proMemberRoleShows) {
proMemberRoleShow.setRecStatus(WebConstant.REC_STATUS.Deleted.value);
memberRoleShowDao.updateByPrimaryKeySelective(proMemberRoleShow);
}
}
//4.查找关注者相关删除
UserAttentionExample userAttentionExample = new UserAttentionExample();
userAttentionExample.createCriteria().andProjectIdEqualTo(param.getProjectId());
List<UserAttention> userAttentions = userAttentionDao.selectByExample(userAttentionExample);
if (CollectionUtil.isNotEmpty(userAttentions)){
userAttentions.forEach(userAttention -> {
userAttention.setRecStatus(WebConstant.REC_STATUS.Deleted.value);
userAttentionDao.updateByPrimaryKeySelective(userAttention);
});
}
}else{
throw new BaseException(CodeEnum.NOT_POWER);
}
}
/**
* 根据模板复制项目
* @param param 项目id
* @param userId 当前用户id
* @return 复制后的项目
*/
@Override
public ProjectVo.ProjectInfo copyProjectNew(ProjectDto.ProjectIdDto param, Long userId) {
//当前时间
long currentTime = System.currentTimeMillis();
SysProject oldProject = sysProjectDao.selectByPrimaryKey(param.getProjectId());
//项目开始时间和结束时间的时间差
Long timeDifference = oldProject.getEndTime() - oldProject.getBeginTime();
//复制项目
SysProject newProject = new SysProject();
BeanUtil.copyProperties(oldProject,newProject);
newProject.setId(snowflake.nextId());
newProject.setCreatorId(userId);
newProject.setName(oldProject.getName()+"-副本");
newProject.setTemplate((byte)0);
newProject.setBeginTime(currentTime);
newProject.setEndTime(currentTime+timeDifference);
newProject.setCreatedAt(null);
newProject.setUpdatedAt(null);
sysProjectDao.insertSelective(newProject);
//复制项目配置表
ProShowExample showExample = new ProShowExample();
showExample.createCriteria().andProjectIdEqualTo(oldProject.getId());
List<ProShow> oldShows = proShowDao.selectByExample(showExample);
if (CollectionUtil.isNotEmpty(oldShows)){
for (ProShow oldShow : oldShows) {
ProShow newShow = new ProShow();
BeanUtil.copyProperties(oldShow,newShow);
newShow.setId(snowflake.nextId());
newShow.setProjectId(newProject.getId());
newShow.setCreatedAt(null);
newShow.setUpdatedAt(null);
}
}
//该用户关注新项目
UserAttention userAttention = new UserAttention();
userAttention.setId(snowflake.nextId());
userAttention.setUserId(userId);
userAttention.setProjectId(newProject.getId());
attentionDao.insertSelective(userAttention);
//添加角色
copyRole(oldProject.getId(), newProject.getId());
//复制项目配置信息
copyProjectConfig(oldProject.getId(), newProject.getId());
//复制项目下的角色
return null;
}
}

3
tall/src/main/java/com/ccsens/tall/service/TaskSubTimeService.java

@ -364,6 +364,9 @@ public class TaskSubTimeService implements ITaskSubTimeService {
detail.setExecutorRole(addTask.getExecutorId());
detail.setMilestone(addTask.getMilestone());
detail.setBuildUser(currentUserId);
detail.setLastTaskDetailId(addTask.getLastTaskDetailId());
detail.setLastType(addTask.getLastType());
detail.setTimeDifference(addTask.getTimeDifference());
//添加任务优先级
if(ObjectUtil.isNotNull(addTask.getPriority())){
detail.setPriority(addTask.getPriority());

15
tall/src/main/java/com/ccsens/tall/web/DebugController.java

@ -1,5 +1,7 @@
package com.ccsens.tall.web;
import cn.hutool.json.JSON;
import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.ccsens.tall.bean.dto.message.SyncMessageWithStartDto;
@ -23,10 +25,8 @@ import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import java.util.*;
@Slf4j
@Api(tags = "DEBUG" , description = "DebugController | ")
@RestController
@ -45,9 +45,9 @@ public class DebugController {
@ApiImplicitParams({
})
@RequestMapping(value="",produces = {"application/json;charset=UTF-8"})
public JsonResponse getSmsCode(HttpServletRequest request) throws Exception {
// redisUtil.set("wps_tall_appId","d12722a7d28e430c889309fa4754aaba");
// redisUtil.set("wps_tall_appKey","f273e717247947ba8942a2373b6896c7");
public JsonResponse getSmsCode(HttpServletRequest request,HttpServletResponse response) throws Exception {
JSONObject jsonObject = new JSONObject();
response.addIntHeader("",jsonObject.toJSONString().length());
return JsonResponse.newInstance().ok("测试");
}
@ -63,7 +63,6 @@ public class DebugController {
// InMessage inMessage = InMessage.newToServerMessage(MessageConstant.DomainType.Server,serverMessage);
// String j = JacksonUtil.beanToJson(inMessage);
// System.out.println(j);
String l = "测试225";
String to = "1175954520199532544";
Set<String> s = new HashSet<>();

27
tall/src/main/java/com/ccsens/tall/web/ProjectController.java

@ -1,5 +1,7 @@
package com.ccsens.tall.web;
import com.ccsens.cloudutil.annotation.MustLogin;
import com.ccsens.tall.annotation.MustLoginTall;
import com.ccsens.tall.bean.dto.ProjectDto;
import com.ccsens.tall.bean.dto.TaskDto;
import com.ccsens.tall.bean.vo.ProjectVo;
@ -11,11 +13,9 @@ import com.ccsens.tall.service.IProjectService;
import com.ccsens.util.JsonResponse;
import com.ccsens.util.WebConstant;
import com.ccsens.util.annotation.OperateType;
import com.ccsens.util.bean.dto.QueryDto;
import io.jsonwebtoken.Claims;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@ -323,4 +323,23 @@ public class ProjectController {
return JsonResponse.newInstance().ok();
}
@MustLoginTall
@ApiOperation(value = "将项目转化为模板", notes = "")
@RequestMapping(value = "/projectToTemplate", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse projectToTemplate(@ApiParam @Validated @RequestBody QueryDto<ProjectDto.ProjectToTemplate> params) throws Exception {
log.info("将项目转化为模板:{}",params);
projectService.projectToTemplate(params.getParam(),params.getUserId());
log.info("项目转模板");
return JsonResponse.newInstance().ok();
}
@MustLogin
@ApiOperation(value = "根据模板复制项目新", notes = "")
@RequestMapping(value = "/copyProject", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<ProjectVo.ProjectInfo> copyProjectNew(@ApiParam @Validated @RequestBody QueryDto<ProjectDto.ProjectIdDto> params) throws Exception {
log.info("根据模板复制项目新:{}",params);
ProjectVo.ProjectInfo projectInfo = projectService.copyProjectNew(params.getParam(),params.getUserId());
log.info("根据模板复制项目新结束");
return JsonResponse.newInstance().ok(projectInfo);
}
}

8
tall/src/main/java/com/ccsens/tall/web/TaskController.java

@ -322,4 +322,12 @@ public class TaskController {
List<TaskVo.AboutWeekTask> aboutWeekTask = taskDetailService.selectAboutWeekTask(params.getParam(),params.getUserId());
return JsonResponse.newInstance().ok(aboutWeekTask);
}
@MustLoginTall
@ApiOperation(value = "给任务增加分解任务",notes = "")
@RequestMapping(value = "/addSubTaskForDetailTask", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<List<TaskVo.AboutWeekTask>> addSubTaskForDetailTask(@ApiParam @Validated @RequestBody QueryDto<TaskDto.AboutWeekTask> params) throws Exception {
List<TaskVo.AboutWeekTask> aboutWeekTask = taskDetailService.selectAboutWeekTask(params.getParam(),params.getUserId());
return JsonResponse.newInstance().ok(aboutWeekTask);
}
}

6
tall/src/main/resources/application-dev.yml

@ -11,11 +11,11 @@ spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
rabbitmq:
host: 192.168.31.13
host: test.tall.wiki
# host: 127.0.0.1
password: 111111
password: guest
port: 5672
username: admin
username: guest
redis:
database: 0
host: 127.0.0.1

10
tall/src/main/resources/mapper_dao/TaskSubTimeDao.xml

@ -77,10 +77,12 @@
t_pro_sub_time_member m LEFT JOIN t_pro_task_sub_time s on m.task_sub_time_id = s.id
WHERE
m.rec_status = 0
and m.member_id in
<foreach collection="memberIdList" item="id" separator="," open="(" close=")">
#{id}
</foreach>
<if test="memberIdList != null and memberIdList.size() > 0">
and m.member_id in
<foreach collection="memberIdList" item="id" separator="," open="(" close=")">
#{id}
</foreach>
</if>
)t on t.sId = s.id
LEFT JOIN
(

58
tall/src/main/resources/mapper_raw/ProTaskDetailMapper.xml

@ -31,6 +31,9 @@
<result column="priority" jdbcType="TINYINT" property="priority" />
<result column="milestone" jdbcType="VARCHAR" property="milestone" />
<result column="build_user" jdbcType="BIGINT" property="buildUser" />
<result column="last_task_detail_id" jdbcType="BIGINT" property="lastTaskDetailId" />
<result column="last_type" jdbcType="TINYINT" property="lastType" />
<result column="time_difference" jdbcType="BIGINT" property="timeDifference" />
</resultMap>
<sql id="Example_Where_Clause">
<where>
@ -94,7 +97,8 @@
id, project_id, name, description, begin_time, end_time, cycle, parent_id, sub_task,
sub_project_id, sub_project, executor_role, checker_role, money, delay, delay_time,
loop_to, loop_times, virtual, level, has_group, finish_need_all, all_member, created_at,
updated_at, rec_status, priority, milestone, build_user
updated_at, rec_status, priority, milestone, build_user, last_task_detail_id, last_type,
time_difference
</sql>
<select id="selectByExample" parameterType="com.ccsens.tall.bean.po.ProTaskDetailExample" resultMap="BaseResultMap">
select
@ -136,7 +140,8 @@
virtual, level, has_group,
finish_need_all, all_member, created_at,
updated_at, rec_status, priority,
milestone, build_user)
milestone, build_user, last_task_detail_id,
last_type, time_difference)
values (#{id,jdbcType=BIGINT}, #{projectId,jdbcType=BIGINT}, #{name,jdbcType=VARCHAR},
#{description,jdbcType=VARCHAR}, #{beginTime,jdbcType=BIGINT}, #{endTime,jdbcType=BIGINT},
#{cycle,jdbcType=VARCHAR}, #{parentId,jdbcType=BIGINT}, #{subTask,jdbcType=VARCHAR},
@ -146,7 +151,8 @@
#{virtual,jdbcType=TINYINT}, #{level,jdbcType=TINYINT}, #{hasGroup,jdbcType=TINYINT},
#{finishNeedAll,jdbcType=TINYINT}, #{allMember,jdbcType=TINYINT}, #{createdAt,jdbcType=TIMESTAMP},
#{updatedAt,jdbcType=TIMESTAMP}, #{recStatus,jdbcType=TINYINT}, #{priority,jdbcType=TINYINT},
#{milestone,jdbcType=VARCHAR}, #{buildUser,jdbcType=BIGINT})
#{milestone,jdbcType=VARCHAR}, #{buildUser,jdbcType=BIGINT}, #{lastTaskDetailId,jdbcType=BIGINT},
#{lastType,jdbcType=TINYINT}, #{timeDifference,jdbcType=BIGINT})
</insert>
<insert id="insertSelective" parameterType="com.ccsens.tall.bean.po.ProTaskDetail">
insert into t_pro_task_detail
@ -238,6 +244,15 @@
<if test="buildUser != null">
build_user,
</if>
<if test="lastTaskDetailId != null">
last_task_detail_id,
</if>
<if test="lastType != null">
last_type,
</if>
<if test="timeDifference != null">
time_difference,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">
@ -327,6 +342,15 @@
<if test="buildUser != null">
#{buildUser,jdbcType=BIGINT},
</if>
<if test="lastTaskDetailId != null">
#{lastTaskDetailId,jdbcType=BIGINT},
</if>
<if test="lastType != null">
#{lastType,jdbcType=TINYINT},
</if>
<if test="timeDifference != null">
#{timeDifference,jdbcType=BIGINT},
</if>
</trim>
</insert>
<select id="countByExample" parameterType="com.ccsens.tall.bean.po.ProTaskDetailExample" resultType="java.lang.Long">
@ -425,6 +449,15 @@
<if test="record.buildUser != null">
build_user = #{record.buildUser,jdbcType=BIGINT},
</if>
<if test="record.lastTaskDetailId != null">
last_task_detail_id = #{record.lastTaskDetailId,jdbcType=BIGINT},
</if>
<if test="record.lastType != null">
last_type = #{record.lastType,jdbcType=TINYINT},
</if>
<if test="record.timeDifference != null">
time_difference = #{record.timeDifference,jdbcType=BIGINT},
</if>
</set>
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
@ -460,7 +493,10 @@
rec_status = #{record.recStatus,jdbcType=TINYINT},
priority = #{record.priority,jdbcType=TINYINT},
milestone = #{record.milestone,jdbcType=VARCHAR},
build_user = #{record.buildUser,jdbcType=BIGINT}
build_user = #{record.buildUser,jdbcType=BIGINT},
last_task_detail_id = #{record.lastTaskDetailId,jdbcType=BIGINT},
last_type = #{record.lastType,jdbcType=TINYINT},
time_difference = #{record.timeDifference,jdbcType=BIGINT}
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
@ -552,6 +588,15 @@
<if test="buildUser != null">
build_user = #{buildUser,jdbcType=BIGINT},
</if>
<if test="lastTaskDetailId != null">
last_task_detail_id = #{lastTaskDetailId,jdbcType=BIGINT},
</if>
<if test="lastType != null">
last_type = #{lastType,jdbcType=TINYINT},
</if>
<if test="timeDifference != null">
time_difference = #{timeDifference,jdbcType=BIGINT},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
</update>
@ -584,7 +629,10 @@
rec_status = #{recStatus,jdbcType=TINYINT},
priority = #{priority,jdbcType=TINYINT},
milestone = #{milestone,jdbcType=VARCHAR},
build_user = #{buildUser,jdbcType=BIGINT}
build_user = #{buildUser,jdbcType=BIGINT},
last_task_detail_id = #{lastTaskDetailId,jdbcType=BIGINT},
last_type = #{lastType,jdbcType=TINYINT},
time_difference = #{timeDifference,jdbcType=BIGINT}
where id = #{id,jdbcType=BIGINT}
</update>
</mapper>

1
util/src/main/java/com/ccsens/util/CodeEnum.java

@ -212,6 +212,7 @@ public enum CodeEnum {
WBS_PROJECT_NAME_REPEAT(172,"项目名称不能重复",true),
DELIVER_REPEAT(173,"交付物已存在",true),
PARENT_PROJECT_NOT_MATCHING(174,"父任务与项目不匹配",true),
PM_NOT_MEMBER(175,"项目经理下必须有一个成员",true),
;

Loading…
Cancel
Save