diff --git a/tall/src/main/java/com/ccsens/tall/bean/dto/PluginDto.java b/tall/src/main/java/com/ccsens/tall/bean/dto/PluginDto.java index 8ff26c26..21f77531 100644 --- a/tall/src/main/java/com/ccsens/tall/bean/dto/PluginDto.java +++ b/tall/src/main/java/com/ccsens/tall/bean/dto/PluginDto.java @@ -21,4 +21,23 @@ public class PluginDto { @Size(max =140,min = 0,message = "信息格式错误") private String description; } + + @Data + @ApiModel("添加笔记") + public static class SaveNotes { + @ApiModelProperty("任务id") + @NotNull(message = "任务id为空") + private Long taskId; + @ApiModelProperty("角色id") + private Long roleId; + @ApiModelProperty("被添加笔记的插件id,不是笔记插件的id,在插件上记笔记时需要,在任务上记笔记时不需要传参") + private Long pluginId; + @ApiModelProperty("笔记内容") + @NotEmpty(message = "您还什么都没写") + @Size(max =140,min = 0,message = "字数超出限制") + private String value; + @ApiModelProperty("是否公开展示,0否 1是 默认0") + private Integer publicity = 0; + } + } diff --git a/tall/src/main/java/com/ccsens/tall/bean/po/ProNotes.java b/tall/src/main/java/com/ccsens/tall/bean/po/ProNotes.java new file mode 100644 index 00000000..2127936c --- /dev/null +++ b/tall/src/main/java/com/ccsens/tall/bean/po/ProNotes.java @@ -0,0 +1,128 @@ +package com.ccsens.tall.bean.po; + +import java.io.Serializable; +import java.util.Date; + +public class ProNotes implements Serializable { + private Long id; + + private String value; + + private Long taskId; + + private Long pluginId; + + private Long roleId; + + private Long time; + + private Byte publicity; + + private Date createdAt; + + private Date updatedAt; + + private Byte recStatus; + + private static final long serialVersionUID = 1L; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getValue() { + return value; + } + + public void setValue(String value) { + this.value = value == null ? null : value.trim(); + } + + public Long getTaskId() { + return taskId; + } + + public void setTaskId(Long taskId) { + this.taskId = taskId; + } + + public Long getPluginId() { + return pluginId; + } + + public void setPluginId(Long pluginId) { + this.pluginId = pluginId; + } + + public Long getRoleId() { + return roleId; + } + + public void setRoleId(Long roleId) { + this.roleId = roleId; + } + + public Long getTime() { + return time; + } + + public void setTime(Long time) { + this.time = time; + } + + public Byte getPublicity() { + return publicity; + } + + public void setPublicity(Byte publicity) { + this.publicity = publicity; + } + + 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; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(getClass().getSimpleName()); + sb.append(" ["); + sb.append("Hash = ").append(hashCode()); + sb.append(", id=").append(id); + sb.append(", value=").append(value); + sb.append(", taskId=").append(taskId); + sb.append(", pluginId=").append(pluginId); + sb.append(", roleId=").append(roleId); + sb.append(", time=").append(time); + sb.append(", publicity=").append(publicity); + sb.append(", createdAt=").append(createdAt); + sb.append(", updatedAt=").append(updatedAt); + sb.append(", recStatus=").append(recStatus); + sb.append("]"); + return sb.toString(); + } +} \ No newline at end of file diff --git a/tall/src/main/java/com/ccsens/tall/bean/po/ProNotesExample.java b/tall/src/main/java/com/ccsens/tall/bean/po/ProNotesExample.java new file mode 100644 index 00000000..bc8b6091 --- /dev/null +++ b/tall/src/main/java/com/ccsens/tall/bean/po/ProNotesExample.java @@ -0,0 +1,811 @@ +package com.ccsens.tall.bean.po; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +public class ProNotesExample { + protected String orderByClause; + + protected boolean distinct; + + protected List oredCriteria; + + public ProNotesExample() { + oredCriteria = new ArrayList(); + } + + public void setOrderByClause(String orderByClause) { + this.orderByClause = orderByClause; + } + + public String getOrderByClause() { + return orderByClause; + } + + public void setDistinct(boolean distinct) { + this.distinct = distinct; + } + + public boolean isDistinct() { + return distinct; + } + + public List getOredCriteria() { + return oredCriteria; + } + + public void or(Criteria criteria) { + oredCriteria.add(criteria); + } + + public Criteria or() { + Criteria criteria = createCriteriaInternal(); + oredCriteria.add(criteria); + return criteria; + } + + public Criteria createCriteria() { + Criteria criteria = createCriteriaInternal(); + if (oredCriteria.size() == 0) { + oredCriteria.add(criteria); + } + return criteria; + } + + protected Criteria createCriteriaInternal() { + Criteria criteria = new Criteria(); + return criteria; + } + + public void clear() { + oredCriteria.clear(); + orderByClause = null; + distinct = false; + } + + protected abstract static class GeneratedCriteria { + protected List criteria; + + protected GeneratedCriteria() { + super(); + criteria = new ArrayList(); + } + + public boolean isValid() { + return criteria.size() > 0; + } + + public List getAllCriteria() { + return criteria; + } + + public List getCriteria() { + return criteria; + } + + protected void addCriterion(String condition) { + if (condition == null) { + throw new RuntimeException("Value for condition cannot be null"); + } + criteria.add(new Criterion(condition)); + } + + protected void addCriterion(String condition, Object value, String property) { + if (value == null) { + throw new RuntimeException("Value for " + property + " cannot be null"); + } + criteria.add(new Criterion(condition, value)); + } + + protected void addCriterion(String condition, Object value1, Object value2, String property) { + if (value1 == null || value2 == null) { + throw new RuntimeException("Between values for " + property + " cannot be null"); + } + criteria.add(new Criterion(condition, value1, value2)); + } + + public Criteria andIdIsNull() { + addCriterion("id is null"); + return (Criteria) this; + } + + public Criteria andIdIsNotNull() { + addCriterion("id is not null"); + return (Criteria) this; + } + + public Criteria andIdEqualTo(Long value) { + addCriterion("id =", value, "id"); + return (Criteria) this; + } + + public Criteria andIdNotEqualTo(Long value) { + addCriterion("id <>", value, "id"); + return (Criteria) this; + } + + public Criteria andIdGreaterThan(Long value) { + addCriterion("id >", value, "id"); + return (Criteria) this; + } + + public Criteria andIdGreaterThanOrEqualTo(Long value) { + addCriterion("id >=", value, "id"); + return (Criteria) this; + } + + public Criteria andIdLessThan(Long value) { + addCriterion("id <", value, "id"); + return (Criteria) this; + } + + public Criteria andIdLessThanOrEqualTo(Long value) { + addCriterion("id <=", value, "id"); + return (Criteria) this; + } + + public Criteria andIdIn(List values) { + addCriterion("id in", values, "id"); + return (Criteria) this; + } + + public Criteria andIdNotIn(List values) { + addCriterion("id not in", values, "id"); + return (Criteria) this; + } + + public Criteria andIdBetween(Long value1, Long value2) { + addCriterion("id between", value1, value2, "id"); + return (Criteria) this; + } + + public Criteria andIdNotBetween(Long value1, Long value2) { + addCriterion("id not between", value1, value2, "id"); + return (Criteria) this; + } + + public Criteria andValueIsNull() { + addCriterion("value is null"); + return (Criteria) this; + } + + public Criteria andValueIsNotNull() { + addCriterion("value is not null"); + return (Criteria) this; + } + + public Criteria andValueEqualTo(String value) { + addCriterion("value =", value, "value"); + return (Criteria) this; + } + + public Criteria andValueNotEqualTo(String value) { + addCriterion("value <>", value, "value"); + return (Criteria) this; + } + + public Criteria andValueGreaterThan(String value) { + addCriterion("value >", value, "value"); + return (Criteria) this; + } + + public Criteria andValueGreaterThanOrEqualTo(String value) { + addCriterion("value >=", value, "value"); + return (Criteria) this; + } + + public Criteria andValueLessThan(String value) { + addCriterion("value <", value, "value"); + return (Criteria) this; + } + + public Criteria andValueLessThanOrEqualTo(String value) { + addCriterion("value <=", value, "value"); + return (Criteria) this; + } + + public Criteria andValueLike(String value) { + addCriterion("value like", value, "value"); + return (Criteria) this; + } + + public Criteria andValueNotLike(String value) { + addCriterion("value not like", value, "value"); + return (Criteria) this; + } + + public Criteria andValueIn(List values) { + addCriterion("value in", values, "value"); + return (Criteria) this; + } + + public Criteria andValueNotIn(List values) { + addCriterion("value not in", values, "value"); + return (Criteria) this; + } + + public Criteria andValueBetween(String value1, String value2) { + addCriterion("value between", value1, value2, "value"); + return (Criteria) this; + } + + public Criteria andValueNotBetween(String value1, String value2) { + addCriterion("value not between", value1, value2, "value"); + return (Criteria) this; + } + + public Criteria andTaskIdIsNull() { + addCriterion("task_id is null"); + return (Criteria) this; + } + + public Criteria andTaskIdIsNotNull() { + addCriterion("task_id is not null"); + return (Criteria) this; + } + + public Criteria andTaskIdEqualTo(Long value) { + addCriterion("task_id =", value, "taskId"); + return (Criteria) this; + } + + public Criteria andTaskIdNotEqualTo(Long value) { + addCriterion("task_id <>", value, "taskId"); + return (Criteria) this; + } + + public Criteria andTaskIdGreaterThan(Long value) { + addCriterion("task_id >", value, "taskId"); + return (Criteria) this; + } + + public Criteria andTaskIdGreaterThanOrEqualTo(Long value) { + addCriterion("task_id >=", value, "taskId"); + return (Criteria) this; + } + + public Criteria andTaskIdLessThan(Long value) { + addCriterion("task_id <", value, "taskId"); + return (Criteria) this; + } + + public Criteria andTaskIdLessThanOrEqualTo(Long value) { + addCriterion("task_id <=", value, "taskId"); + return (Criteria) this; + } + + public Criteria andTaskIdIn(List values) { + addCriterion("task_id in", values, "taskId"); + return (Criteria) this; + } + + public Criteria andTaskIdNotIn(List values) { + addCriterion("task_id not in", values, "taskId"); + return (Criteria) this; + } + + public Criteria andTaskIdBetween(Long value1, Long value2) { + addCriterion("task_id between", value1, value2, "taskId"); + return (Criteria) this; + } + + public Criteria andTaskIdNotBetween(Long value1, Long value2) { + addCriterion("task_id not between", value1, value2, "taskId"); + return (Criteria) this; + } + + public Criteria andPluginIdIsNull() { + addCriterion("plugin_id is null"); + return (Criteria) this; + } + + public Criteria andPluginIdIsNotNull() { + addCriterion("plugin_id is not null"); + return (Criteria) this; + } + + public Criteria andPluginIdEqualTo(Long value) { + addCriterion("plugin_id =", value, "pluginId"); + return (Criteria) this; + } + + public Criteria andPluginIdNotEqualTo(Long value) { + addCriterion("plugin_id <>", value, "pluginId"); + return (Criteria) this; + } + + public Criteria andPluginIdGreaterThan(Long value) { + addCriterion("plugin_id >", value, "pluginId"); + return (Criteria) this; + } + + public Criteria andPluginIdGreaterThanOrEqualTo(Long value) { + addCriterion("plugin_id >=", value, "pluginId"); + return (Criteria) this; + } + + public Criteria andPluginIdLessThan(Long value) { + addCriterion("plugin_id <", value, "pluginId"); + return (Criteria) this; + } + + public Criteria andPluginIdLessThanOrEqualTo(Long value) { + addCriterion("plugin_id <=", value, "pluginId"); + return (Criteria) this; + } + + public Criteria andPluginIdIn(List values) { + addCriterion("plugin_id in", values, "pluginId"); + return (Criteria) this; + } + + public Criteria andPluginIdNotIn(List values) { + addCriterion("plugin_id not in", values, "pluginId"); + return (Criteria) this; + } + + public Criteria andPluginIdBetween(Long value1, Long value2) { + addCriterion("plugin_id between", value1, value2, "pluginId"); + return (Criteria) this; + } + + public Criteria andPluginIdNotBetween(Long value1, Long value2) { + addCriterion("plugin_id not between", value1, value2, "pluginId"); + return (Criteria) this; + } + + public Criteria andRoleIdIsNull() { + addCriterion("role_id is null"); + return (Criteria) this; + } + + public Criteria andRoleIdIsNotNull() { + addCriterion("role_id is not null"); + return (Criteria) this; + } + + public Criteria andRoleIdEqualTo(Long value) { + addCriterion("role_id =", value, "roleId"); + return (Criteria) this; + } + + public Criteria andRoleIdNotEqualTo(Long value) { + addCriterion("role_id <>", value, "roleId"); + return (Criteria) this; + } + + public Criteria andRoleIdGreaterThan(Long value) { + addCriterion("role_id >", value, "roleId"); + return (Criteria) this; + } + + public Criteria andRoleIdGreaterThanOrEqualTo(Long value) { + addCriterion("role_id >=", value, "roleId"); + return (Criteria) this; + } + + public Criteria andRoleIdLessThan(Long value) { + addCriterion("role_id <", value, "roleId"); + return (Criteria) this; + } + + public Criteria andRoleIdLessThanOrEqualTo(Long value) { + addCriterion("role_id <=", value, "roleId"); + return (Criteria) this; + } + + public Criteria andRoleIdIn(List values) { + addCriterion("role_id in", values, "roleId"); + return (Criteria) this; + } + + public Criteria andRoleIdNotIn(List values) { + addCriterion("role_id not in", values, "roleId"); + return (Criteria) this; + } + + public Criteria andRoleIdBetween(Long value1, Long value2) { + addCriterion("role_id between", value1, value2, "roleId"); + return (Criteria) this; + } + + public Criteria andRoleIdNotBetween(Long value1, Long value2) { + addCriterion("role_id not between", value1, value2, "roleId"); + return (Criteria) this; + } + + public Criteria andTimeIsNull() { + addCriterion("time is null"); + return (Criteria) this; + } + + public Criteria andTimeIsNotNull() { + addCriterion("time is not null"); + return (Criteria) this; + } + + public Criteria andTimeEqualTo(Long value) { + addCriterion("time =", value, "time"); + return (Criteria) this; + } + + public Criteria andTimeNotEqualTo(Long value) { + addCriterion("time <>", value, "time"); + return (Criteria) this; + } + + public Criteria andTimeGreaterThan(Long value) { + addCriterion("time >", value, "time"); + return (Criteria) this; + } + + public Criteria andTimeGreaterThanOrEqualTo(Long value) { + addCriterion("time >=", value, "time"); + return (Criteria) this; + } + + public Criteria andTimeLessThan(Long value) { + addCriterion("time <", value, "time"); + return (Criteria) this; + } + + public Criteria andTimeLessThanOrEqualTo(Long value) { + addCriterion("time <=", value, "time"); + return (Criteria) this; + } + + public Criteria andTimeIn(List values) { + addCriterion("time in", values, "time"); + return (Criteria) this; + } + + public Criteria andTimeNotIn(List values) { + addCriterion("time not in", values, "time"); + return (Criteria) this; + } + + public Criteria andTimeBetween(Long value1, Long value2) { + addCriterion("time between", value1, value2, "time"); + return (Criteria) this; + } + + public Criteria andTimeNotBetween(Long value1, Long value2) { + addCriterion("time not between", value1, value2, "time"); + return (Criteria) this; + } + + public Criteria andPublicityIsNull() { + addCriterion("publicity is null"); + return (Criteria) this; + } + + public Criteria andPublicityIsNotNull() { + addCriterion("publicity is not null"); + return (Criteria) this; + } + + public Criteria andPublicityEqualTo(Byte value) { + addCriterion("publicity =", value, "publicity"); + return (Criteria) this; + } + + public Criteria andPublicityNotEqualTo(Byte value) { + addCriterion("publicity <>", value, "publicity"); + return (Criteria) this; + } + + public Criteria andPublicityGreaterThan(Byte value) { + addCriterion("publicity >", value, "publicity"); + return (Criteria) this; + } + + public Criteria andPublicityGreaterThanOrEqualTo(Byte value) { + addCriterion("publicity >=", value, "publicity"); + return (Criteria) this; + } + + public Criteria andPublicityLessThan(Byte value) { + addCriterion("publicity <", value, "publicity"); + return (Criteria) this; + } + + public Criteria andPublicityLessThanOrEqualTo(Byte value) { + addCriterion("publicity <=", value, "publicity"); + return (Criteria) this; + } + + public Criteria andPublicityIn(List values) { + addCriterion("publicity in", values, "publicity"); + return (Criteria) this; + } + + public Criteria andPublicityNotIn(List values) { + addCriterion("publicity not in", values, "publicity"); + return (Criteria) this; + } + + public Criteria andPublicityBetween(Byte value1, Byte value2) { + addCriterion("publicity between", value1, value2, "publicity"); + return (Criteria) this; + } + + public Criteria andPublicityNotBetween(Byte value1, Byte value2) { + addCriterion("publicity not between", value1, value2, "publicity"); + return (Criteria) this; + } + + public Criteria andCreatedAtIsNull() { + addCriterion("created_at is null"); + return (Criteria) this; + } + + public Criteria andCreatedAtIsNotNull() { + addCriterion("created_at is not null"); + return (Criteria) this; + } + + public Criteria andCreatedAtEqualTo(Date value) { + addCriterion("created_at =", value, "createdAt"); + return (Criteria) this; + } + + public Criteria andCreatedAtNotEqualTo(Date value) { + addCriterion("created_at <>", value, "createdAt"); + return (Criteria) this; + } + + public Criteria andCreatedAtGreaterThan(Date value) { + addCriterion("created_at >", value, "createdAt"); + return (Criteria) this; + } + + public Criteria andCreatedAtGreaterThanOrEqualTo(Date value) { + addCriterion("created_at >=", value, "createdAt"); + return (Criteria) this; + } + + public Criteria andCreatedAtLessThan(Date value) { + addCriterion("created_at <", value, "createdAt"); + return (Criteria) this; + } + + public Criteria andCreatedAtLessThanOrEqualTo(Date value) { + addCriterion("created_at <=", value, "createdAt"); + return (Criteria) this; + } + + public Criteria andCreatedAtIn(List values) { + addCriterion("created_at in", values, "createdAt"); + return (Criteria) this; + } + + public Criteria andCreatedAtNotIn(List values) { + addCriterion("created_at not in", values, "createdAt"); + return (Criteria) this; + } + + public Criteria andCreatedAtBetween(Date value1, Date value2) { + addCriterion("created_at between", value1, value2, "createdAt"); + return (Criteria) this; + } + + public Criteria andCreatedAtNotBetween(Date value1, Date value2) { + addCriterion("created_at not between", value1, value2, "createdAt"); + return (Criteria) this; + } + + public Criteria andUpdatedAtIsNull() { + addCriterion("updated_at is null"); + return (Criteria) this; + } + + public Criteria andUpdatedAtIsNotNull() { + addCriterion("updated_at is not null"); + return (Criteria) this; + } + + public Criteria andUpdatedAtEqualTo(Date value) { + addCriterion("updated_at =", value, "updatedAt"); + return (Criteria) this; + } + + public Criteria andUpdatedAtNotEqualTo(Date value) { + addCriterion("updated_at <>", value, "updatedAt"); + return (Criteria) this; + } + + public Criteria andUpdatedAtGreaterThan(Date value) { + addCriterion("updated_at >", value, "updatedAt"); + return (Criteria) this; + } + + public Criteria andUpdatedAtGreaterThanOrEqualTo(Date value) { + addCriterion("updated_at >=", value, "updatedAt"); + return (Criteria) this; + } + + public Criteria andUpdatedAtLessThan(Date value) { + addCriterion("updated_at <", value, "updatedAt"); + return (Criteria) this; + } + + public Criteria andUpdatedAtLessThanOrEqualTo(Date value) { + addCriterion("updated_at <=", value, "updatedAt"); + return (Criteria) this; + } + + public Criteria andUpdatedAtIn(List values) { + addCriterion("updated_at in", values, "updatedAt"); + return (Criteria) this; + } + + public Criteria andUpdatedAtNotIn(List values) { + addCriterion("updated_at not in", values, "updatedAt"); + return (Criteria) this; + } + + public Criteria andUpdatedAtBetween(Date value1, Date value2) { + addCriterion("updated_at between", value1, value2, "updatedAt"); + return (Criteria) this; + } + + public Criteria andUpdatedAtNotBetween(Date value1, Date value2) { + addCriterion("updated_at not between", value1, value2, "updatedAt"); + return (Criteria) this; + } + + public Criteria andRecStatusIsNull() { + addCriterion("rec_status is null"); + return (Criteria) this; + } + + public Criteria andRecStatusIsNotNull() { + addCriterion("rec_status is not null"); + return (Criteria) this; + } + + public Criteria andRecStatusEqualTo(Byte value) { + addCriterion("rec_status =", value, "recStatus"); + return (Criteria) this; + } + + public Criteria andRecStatusNotEqualTo(Byte value) { + addCriterion("rec_status <>", value, "recStatus"); + return (Criteria) this; + } + + public Criteria andRecStatusGreaterThan(Byte value) { + addCriterion("rec_status >", value, "recStatus"); + return (Criteria) this; + } + + public Criteria andRecStatusGreaterThanOrEqualTo(Byte value) { + addCriterion("rec_status >=", value, "recStatus"); + return (Criteria) this; + } + + public Criteria andRecStatusLessThan(Byte value) { + addCriterion("rec_status <", value, "recStatus"); + return (Criteria) this; + } + + public Criteria andRecStatusLessThanOrEqualTo(Byte value) { + addCriterion("rec_status <=", value, "recStatus"); + return (Criteria) this; + } + + public Criteria andRecStatusIn(List values) { + addCriterion("rec_status in", values, "recStatus"); + return (Criteria) this; + } + + public Criteria andRecStatusNotIn(List values) { + addCriterion("rec_status not in", values, "recStatus"); + return (Criteria) this; + } + + public Criteria andRecStatusBetween(Byte value1, Byte value2) { + addCriterion("rec_status between", value1, value2, "recStatus"); + return (Criteria) this; + } + + public Criteria andRecStatusNotBetween(Byte value1, Byte value2) { + addCriterion("rec_status not between", value1, value2, "recStatus"); + return (Criteria) this; + } + } + + public static class Criteria extends GeneratedCriteria { + + protected Criteria() { + super(); + } + } + + public static class Criterion { + private String condition; + + private Object value; + + private Object secondValue; + + private boolean noValue; + + private boolean singleValue; + + private boolean betweenValue; + + private boolean listValue; + + private String typeHandler; + + public String getCondition() { + return condition; + } + + public Object getValue() { + return value; + } + + public Object getSecondValue() { + return secondValue; + } + + public boolean isNoValue() { + return noValue; + } + + public boolean isSingleValue() { + return singleValue; + } + + public boolean isBetweenValue() { + return betweenValue; + } + + public boolean isListValue() { + return listValue; + } + + public String getTypeHandler() { + return typeHandler; + } + + protected Criterion(String condition) { + super(); + this.condition = condition; + this.typeHandler = null; + this.noValue = true; + } + + protected Criterion(String condition, Object value, String typeHandler) { + super(); + this.condition = condition; + this.value = value; + this.typeHandler = typeHandler; + if (value instanceof List) { + this.listValue = true; + } else { + this.singleValue = true; + } + } + + protected Criterion(String condition, Object value) { + this(condition, value, null); + } + + protected Criterion(String condition, Object value, Object secondValue, String typeHandler) { + super(); + this.condition = condition; + this.value = value; + this.secondValue = secondValue; + this.typeHandler = typeHandler; + this.betweenValue = true; + } + + protected Criterion(String condition, Object value, Object secondValue) { + this(condition, value, secondValue, null); + } + } +} \ No newline at end of file diff --git a/tall/src/main/java/com/ccsens/tall/bean/vo/PluginVo.java b/tall/src/main/java/com/ccsens/tall/bean/vo/PluginVo.java index 09f6c28d..3cb56b06 100644 --- a/tall/src/main/java/com/ccsens/tall/bean/vo/PluginVo.java +++ b/tall/src/main/java/com/ccsens/tall/bean/vo/PluginVo.java @@ -63,4 +63,23 @@ public class PluginVo { private int mine; } + + @ApiModel("笔记后返回") + @Data + public static class NotesInfo { + @ApiModelProperty("id") + private Long id; + @ApiModelProperty("任务id") + private Long taskId; + @ApiModelProperty("角色Id") + private Long roleId; + @ApiModelProperty("插件id") + private Long pluginId; + @ApiModelProperty("记笔记的时间") + private Long notesTime; + @ApiModelProperty("笔记内容") + private String value; + @ApiModelProperty("是否公开展示 0否 1是") + private int publicity; + } } diff --git a/tall/src/main/java/com/ccsens/tall/persist/dao/ProNotesDao.java b/tall/src/main/java/com/ccsens/tall/persist/dao/ProNotesDao.java new file mode 100644 index 00000000..6c6001a3 --- /dev/null +++ b/tall/src/main/java/com/ccsens/tall/persist/dao/ProNotesDao.java @@ -0,0 +1,11 @@ +package com.ccsens.tall.persist.dao; + +import com.ccsens.tall.persist.mapper.ProNotesMapper; +import org.springframework.stereotype.Repository; + +/** + * @author 逗 + */ +@Repository +public interface ProNotesDao extends ProNotesMapper { +} diff --git a/tall/src/main/java/com/ccsens/tall/persist/mapper/ProNotesMapper.java b/tall/src/main/java/com/ccsens/tall/persist/mapper/ProNotesMapper.java new file mode 100644 index 00000000..e09b1b9c --- /dev/null +++ b/tall/src/main/java/com/ccsens/tall/persist/mapper/ProNotesMapper.java @@ -0,0 +1,30 @@ +package com.ccsens.tall.persist.mapper; + +import com.ccsens.tall.bean.po.ProNotes; +import com.ccsens.tall.bean.po.ProNotesExample; +import java.util.List; +import org.apache.ibatis.annotations.Param; + +public interface ProNotesMapper { + long countByExample(ProNotesExample example); + + int deleteByExample(ProNotesExample example); + + int deleteByPrimaryKey(Long id); + + int insert(ProNotes record); + + int insertSelective(ProNotes record); + + List selectByExample(ProNotesExample example); + + ProNotes selectByPrimaryKey(Long id); + + int updateByExampleSelective(@Param("record") ProNotes record, @Param("example") ProNotesExample example); + + int updateByExample(@Param("record") ProNotes record, @Param("example") ProNotesExample example); + + int updateByPrimaryKeySelective(ProNotes record); + + int updateByPrimaryKey(ProNotes record); +} \ No newline at end of file diff --git a/tall/src/main/java/com/ccsens/tall/service/ITaskPluginService.java b/tall/src/main/java/com/ccsens/tall/service/ITaskPluginService.java index 36053643..3a74f5ba 100644 --- a/tall/src/main/java/com/ccsens/tall/service/ITaskPluginService.java +++ b/tall/src/main/java/com/ccsens/tall/service/ITaskPluginService.java @@ -7,6 +7,9 @@ import com.ccsens.tall.bean.vo.TaskVo; import java.util.List; +/** + * @author 逗 + */ public interface ITaskPluginService { void savePlugin(ProTaskPlugin taskPlugin); @@ -17,4 +20,12 @@ public interface ITaskPluginService { List getComment(Long currentUserId, Long taskId); void deleteComment(Long currentUserId, Long commentId); + + /** + * 在任务上记笔记 + * @param currentUserId userId + * @param saveNotes 笔记内容 + * @return 返回笔记的详情 + */ + PluginVo.NotesInfo saveNotes(Long currentUserId, PluginDto.SaveNotes saveNotes); } diff --git a/tall/src/main/java/com/ccsens/tall/service/TaskPluginService.java b/tall/src/main/java/com/ccsens/tall/service/TaskPluginService.java index 6be15c0a..4e35229e 100644 --- a/tall/src/main/java/com/ccsens/tall/service/TaskPluginService.java +++ b/tall/src/main/java/com/ccsens/tall/service/TaskPluginService.java @@ -14,44 +14,51 @@ import com.ccsens.util.PropUtil; import com.ccsens.util.WebConstant; import com.ccsens.util.exception.BaseException; import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; +import javax.annotation.Resource; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; +import java.util.Map; +/** + * @author 逗 + */ @Slf4j @Service @Transactional(propagation = Propagation.REQUIRED,rollbackFor = Exception.class) public class TaskPluginService implements ITaskPluginService{ - @Autowired + @Resource private TaskPluginDao taskPluginDao; - @Autowired + @Resource private TaskDetailDao taskDetailDao; - @Autowired + @Resource private TaskSubTimeDao taskSubTimeDao; - @Autowired + @Resource private SysPluginDao sysPluginDao; - @Autowired + @Resource private SysProjectDao sysProjectDao; - @Autowired + @Resource private ProRoleDao roleDao; - @Autowired + @Resource private IProMemberService proMemberService; - @Autowired + @Resource private Snowflake snowflake; - @Autowired + @Resource private ProTaskCommentDao proTaskCommentDao; - @Autowired + @Resource private SysUserDao sysUserDao; - @Autowired + @Resource private SysAuthDao sysAuthDao; - @Autowired + @Resource private IProRoleService proRoleService; - @Autowired + @Resource private IRobotService robotService; + @Resource + private ProNotesDao proNotesDao; @Override public void savePlugin(ProTaskPlugin taskPlugin) { @@ -105,18 +112,18 @@ public class TaskPluginService implements ITaskPluginService{ /** * 添加评论 - * @param addCommentPlugin - * @return + * @param addCommentPlugin 评论信息 + * @return 返回这条评论的内容 */ @Override public PluginVo.CommentInfo addComment(Long userId, PluginDto.AddCommentPlugin addCommentPlugin) throws Exception { - ProTaskDetail proTaskDetail = null; ProTaskSubTime subTime = taskSubTimeDao.selectByPrimaryKey(addCommentPlugin.getTaskId()); - if(ObjectUtil.isNotNull(subTime)) { - proTaskDetail = taskDetailDao.selectByPrimaryKey(subTime.getTaskDetailId()); - if (ObjectUtil.isNull(proTaskDetail)) { - throw new BaseException(CodeEnum.NOT_TASK); - } + if(ObjectUtil.isNull(subTime)){ + throw new BaseException(CodeEnum.NOT_TASK); + } + ProTaskDetail proTaskDetail = taskDetailDao.selectByPrimaryKey(subTime.getTaskDetailId()); + if (ObjectUtil.isNull(proTaskDetail)) { + throw new BaseException(CodeEnum.NOT_TASK); } SysProject sysProject = sysProjectDao.selectByPrimaryKey(proTaskDetail.getProjectId()); if(ObjectUtil.isNull(sysProject)){ @@ -161,9 +168,9 @@ public class TaskPluginService implements ITaskPluginService{ /** * 查找评论 - * @param currentUserId - * @param taskId - * @return + * @param currentUserId userId + * @param taskId 任务id + * @return 返回任务下的所有评论 */ @Override public List getComment(Long currentUserId, Long taskId) { @@ -193,4 +200,43 @@ public class TaskPluginService implements ITaskPluginService{ throw new BaseException(CodeEnum.NOT_POWER); } } + + @Override + public PluginVo.NotesInfo saveNotes(Long currentUserId, PluginDto.SaveNotes saveNotes) { + //检查该角色是否是任务负责人 + ProTaskSubTime taskSubTime = taskSubTimeDao.selectByPrimaryKey(saveNotes.getTaskId()); + if(ObjectUtil.isNull(taskSubTime)){ + throw new BaseException(CodeEnum.NOT_TASK); + } + ProTaskDetail taskDetail = taskDetailDao.selectByPrimaryKey(taskSubTime.getTaskDetailId()); + if(ObjectUtil.isNull(taskDetail)){ + throw new BaseException(CodeEnum.NOT_TASK); + } + if(taskDetail.getExecutorRole().longValue() != saveNotes.getRoleId()){ + throw new BaseException(CodeEnum.IS_NOT_EXECUTOR); + } + //添加笔记信息 + ProNotes proNotes = new ProNotes(); + proNotes.setId(snowflake.nextId()); + proNotes.setTaskId(taskSubTime.getId()); + proNotes.setRoleId(saveNotes.getRoleId()); + proNotes.setPluginId(saveNotes.getPluginId()); + proNotes.setValue(saveNotes.getValue()); + if(ObjectUtil.isNotNull(saveNotes.getPublicity())) { + proNotes.setPublicity(saveNotes.getPublicity().byteValue()); + } + Long now = System.currentTimeMillis(); + proNotes.setTime(now); + proNotesDao.insertSelective(proNotes); + //返回 + PluginVo.NotesInfo notesInfo = new PluginVo.NotesInfo(); + notesInfo.setId(proNotes.getId()); + notesInfo.setTaskId(proNotes.getTaskId()); + notesInfo.setRoleId(proNotes.getRoleId()); + notesInfo.setPluginId(proNotes.getPluginId()); + notesInfo.setValue(proNotes.getValue()); + notesInfo.setNotesTime(proNotes.getTime()); + notesInfo.setPublicity(proNotes.getPublicity()); + return notesInfo; + } } diff --git a/tall/src/main/java/com/ccsens/tall/service/TaskSubTimeService.java b/tall/src/main/java/com/ccsens/tall/service/TaskSubTimeService.java index 93e753b5..1b60930b 100644 --- a/tall/src/main/java/com/ccsens/tall/service/TaskSubTimeService.java +++ b/tall/src/main/java/com/ccsens/tall/service/TaskSubTimeService.java @@ -153,6 +153,10 @@ public class TaskSubTimeService implements ITaskSubTimeService { } //不需要全部成员点完成,直接修改任务状态 if (taskDetail.getFinishNeedAll() == 0) { + //完成任务时若任务没有开始时间则将计划开始时间设为实际开始时间 + if(taskSubTime.getRealBeginTime() == 0) { + taskSubTime.setRealBeginTime(taskSubTime.getBeginTime()); + } taskSubTime.setRealEndTime(now); taskSubTime.setComplatedStatus(subTimeId.getCompletedStatus()); taskSubTimeDao.updateByPrimaryKeySelective(taskSubTime); @@ -212,8 +216,8 @@ public class TaskSubTimeService implements ITaskSubTimeService { if (taskSubTime.getComplatedStatus() != 0) { throw new BaseException(CodeEnum.TASK_PREPARATION); } - //结束其他进行中的任务 - completeTask(startTaskDto.getId(), startTaskDto.getRoleId(), now); +// //结束其他进行中的任务 +// completeTask(startTaskDto.getId(), startTaskDto.getRoleId(), now); //开始指定的任务 taskSubTime.setRealBeginTime(now); @@ -227,13 +231,13 @@ public class TaskSubTimeService implements ITaskSubTimeService { player = taskDetail.getDescription(); } - //发送消息 - SyncMessageWithStartDto syncMessage = new SyncMessageWithStartDto(); - SyncMessageWithStartDto.Data syncMessageData = new SyncMessageWithStartDto.Data(); - syncMessageData.setPlayer(player); - syncMessageData.setBeginTaskId(taskSubTime.getTaskDetailId()); - syncMessageData.setDuration(taskSubTime.getEndTime() - taskSubTime.getBeginTime()); - syncMessageData.setTime(now); +// //发送消息 +// SyncMessageWithStartDto syncMessage = new SyncMessageWithStartDto(); +// SyncMessageWithStartDto.Data syncMessageData = new SyncMessageWithStartDto.Data(); +// syncMessageData.setPlayer(player); +// syncMessageData.setBeginTaskId(taskSubTime.getTaskDetailId()); +// syncMessageData.setDuration(taskSubTime.getEndTime() - taskSubTime.getBeginTime()); +// syncMessageData.setTime(now); //接收者 List messageUserList = new ArrayList<>(); ProMemberExample memberExample = new ProMemberExample(); @@ -261,8 +265,12 @@ public class TaskSubTimeService implements ITaskSubTimeService { messageUser1998.setUserId(1998L); messageUserList.add(messageUser1998); - syncMessage.setData(syncMessageData); - syncMessage.setReceivers(messageUserList); +// syncMessage.setData(syncMessageData); +// syncMessage.setReceivers(messageUserList); + Long duration = taskSubTime.getEndTime() - taskSubTime.getBeginTime(); + SyncMessageWithStartDto syncMessage = new SyncMessageWithStartDto(startTaskDto.getProjectId(),null,messageUserList, + startTaskDto.getRoleId(),taskSubTime.getTaskDetailId(),null,now,duration,player); + messageService.sendStartTaskMessage(syncMessage); //3.添加记录 diff --git a/tall/src/main/java/com/ccsens/tall/web/PluginController.java b/tall/src/main/java/com/ccsens/tall/web/PluginController.java index 1faec615..2b452cff 100644 --- a/tall/src/main/java/com/ccsens/tall/web/PluginController.java +++ b/tall/src/main/java/com/ccsens/tall/web/PluginController.java @@ -109,4 +109,16 @@ public class PluginController { taskPluginService.deleteComment(currentUserId,commentId); return JsonResponse.newInstance().ok(); } + + + @ApiOperation(value = "在任务上记笔记", notes = "") + @ApiImplicitParams({ + }) + @RequestMapping(value = "notes", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse saveNotes(HttpServletRequest request, + @ApiParam @Validated @RequestBody PluginDto.SaveNotes saveNotes) throws Exception { + Long currentUserId = Long.valueOf(((Claims) request.getAttribute(WebConstant.REQUEST_KEY_CLAIMS)).getSubject()); + PluginVo.NotesInfo notesInfo = taskPluginService.saveNotes(currentUserId,saveNotes); + return JsonResponse.newInstance().ok(notesInfo); + } } diff --git a/tall/src/main/java/com/ccsens/tall/web/TaskController.java b/tall/src/main/java/com/ccsens/tall/web/TaskController.java index 69432e55..3a76d88f 100644 --- a/tall/src/main/java/com/ccsens/tall/web/TaskController.java +++ b/tall/src/main/java/com/ccsens/tall/web/TaskController.java @@ -49,6 +49,16 @@ public class TaskController { return JsonResponse.newInstance().ok(); } +// @ApiOperation(value = "结束任务",notes = "") +// @ApiImplicitParams({ +// }) +// @RequestMapping(value = "start", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) +// public JsonResponse endTask(HttpServletRequest request, @Validated @RequestBody TaskDto.StartTask dto) throws Exception { +// Long currentUserId = Long.valueOf(((Claims) request.getAttribute(WebConstant.REQUEST_KEY_CLAIMS)).getSubject()); +// subTimeService.startTask(currentUserId,dto); +// return JsonResponse.newInstance().ok(); +// } + @ApiOperation(value = "任务清单", notes = "") @ApiImplicitParams({ @ApiImplicitParam(name = "page", value = "页数", required = true, paramType = "query"), diff --git a/tall/src/main/java/com/ccsens/tall/web/WpsController.java b/tall/src/main/java/com/ccsens/tall/web/WpsController.java index 6f848677..630fa0b6 100644 --- a/tall/src/main/java/com/ccsens/tall/web/WpsController.java +++ b/tall/src/main/java/com/ccsens/tall/web/WpsController.java @@ -192,7 +192,6 @@ public class WpsController { WpsHeader header = new WpsHeader(); header.setUserAgent(request.getHeader("User-Agent")); header.setToken(request.getHeader("x-wps-weboffice-token")); -// header.setToken("eyJhbGciOiJIUzI1NiJ9.eyJpYXQiOjE1OTM0MTI5ODEsInN1YiI6IjEyMTgwMjUyNDk0OTMzNTY1NDQiLCJhdXRoSWQiOiIxMTgzNjM2MjkxNjQ5MTQ2ODgwIiwiZXhwIjoxNTkzNDk5MzgxfQ.c1kAovpN7tq6O4rykIoSF-VPgmYBAM2ZNeqH_jsipI4"); header.setFileId(request.getHeader("x-weboffice-file-id")); return header; } diff --git a/tall/src/main/resources/application.yml b/tall/src/main/resources/application.yml index c88e995d..b2acd365 100644 --- a/tall/src/main/resources/application.yml +++ b/tall/src/main/resources/application.yml @@ -1,4 +1,4 @@ spring: profiles: - active: test - include: util-test,common + active: dev + include: util-dev,common diff --git a/tall/src/main/resources/mapper_raw/ProNotesMapper.xml b/tall/src/main/resources/mapper_raw/ProNotesMapper.xml new file mode 100644 index 00000000..3c9fa82b --- /dev/null +++ b/tall/src/main/resources/mapper_raw/ProNotesMapper.xml @@ -0,0 +1,291 @@ + + + + + + + + + + + + + + + + + + + + + + + + and ${criterion.condition} + + + and ${criterion.condition} #{criterion.value} + + + and ${criterion.condition} #{criterion.value} and #{criterion.secondValue} + + + and ${criterion.condition} + + #{listItem} + + + + + + + + + + + + + + + + + + and ${criterion.condition} + + + and ${criterion.condition} #{criterion.value} + + + and ${criterion.condition} #{criterion.value} and #{criterion.secondValue} + + + and ${criterion.condition} + + #{listItem} + + + + + + + + + + + id, value, task_id, plugin_id, role_id, time, publicity, created_at, updated_at, + rec_status + + + + + delete from t_pro_notes + where id = #{id,jdbcType=BIGINT} + + + delete from t_pro_notes + + + + + + insert into t_pro_notes (id, value, task_id, + plugin_id, role_id, time, + publicity, created_at, updated_at, + rec_status) + values (#{id,jdbcType=BIGINT}, #{value,jdbcType=VARCHAR}, #{taskId,jdbcType=BIGINT}, + #{pluginId,jdbcType=BIGINT}, #{roleId,jdbcType=BIGINT}, #{time,jdbcType=BIGINT}, + #{publicity,jdbcType=TINYINT}, #{createdAt,jdbcType=TIMESTAMP}, #{updatedAt,jdbcType=TIMESTAMP}, + #{recStatus,jdbcType=TINYINT}) + + + insert into t_pro_notes + + + id, + + + value, + + + task_id, + + + plugin_id, + + + role_id, + + + time, + + + publicity, + + + created_at, + + + updated_at, + + + rec_status, + + + + + #{id,jdbcType=BIGINT}, + + + #{value,jdbcType=VARCHAR}, + + + #{taskId,jdbcType=BIGINT}, + + + #{pluginId,jdbcType=BIGINT}, + + + #{roleId,jdbcType=BIGINT}, + + + #{time,jdbcType=BIGINT}, + + + #{publicity,jdbcType=TINYINT}, + + + #{createdAt,jdbcType=TIMESTAMP}, + + + #{updatedAt,jdbcType=TIMESTAMP}, + + + #{recStatus,jdbcType=TINYINT}, + + + + + + update t_pro_notes + + + id = #{record.id,jdbcType=BIGINT}, + + + value = #{record.value,jdbcType=VARCHAR}, + + + task_id = #{record.taskId,jdbcType=BIGINT}, + + + plugin_id = #{record.pluginId,jdbcType=BIGINT}, + + + role_id = #{record.roleId,jdbcType=BIGINT}, + + + time = #{record.time,jdbcType=BIGINT}, + + + publicity = #{record.publicity,jdbcType=TINYINT}, + + + created_at = #{record.createdAt,jdbcType=TIMESTAMP}, + + + updated_at = #{record.updatedAt,jdbcType=TIMESTAMP}, + + + rec_status = #{record.recStatus,jdbcType=TINYINT}, + + + + + + + + update t_pro_notes + set id = #{record.id,jdbcType=BIGINT}, + value = #{record.value,jdbcType=VARCHAR}, + task_id = #{record.taskId,jdbcType=BIGINT}, + plugin_id = #{record.pluginId,jdbcType=BIGINT}, + role_id = #{record.roleId,jdbcType=BIGINT}, + time = #{record.time,jdbcType=BIGINT}, + publicity = #{record.publicity,jdbcType=TINYINT}, + created_at = #{record.createdAt,jdbcType=TIMESTAMP}, + updated_at = #{record.updatedAt,jdbcType=TIMESTAMP}, + rec_status = #{record.recStatus,jdbcType=TINYINT} + + + + + + update t_pro_notes + + + value = #{value,jdbcType=VARCHAR}, + + + task_id = #{taskId,jdbcType=BIGINT}, + + + plugin_id = #{pluginId,jdbcType=BIGINT}, + + + role_id = #{roleId,jdbcType=BIGINT}, + + + time = #{time,jdbcType=BIGINT}, + + + publicity = #{publicity,jdbcType=TINYINT}, + + + created_at = #{createdAt,jdbcType=TIMESTAMP}, + + + updated_at = #{updatedAt,jdbcType=TIMESTAMP}, + + + rec_status = #{recStatus,jdbcType=TINYINT}, + + + where id = #{id,jdbcType=BIGINT} + + + update t_pro_notes + set value = #{value,jdbcType=VARCHAR}, + task_id = #{taskId,jdbcType=BIGINT}, + plugin_id = #{pluginId,jdbcType=BIGINT}, + role_id = #{roleId,jdbcType=BIGINT}, + time = #{time,jdbcType=BIGINT}, + publicity = #{publicity,jdbcType=TINYINT}, + created_at = #{createdAt,jdbcType=TIMESTAMP}, + updated_at = #{updatedAt,jdbcType=TIMESTAMP}, + rec_status = #{recStatus,jdbcType=TINYINT} + where id = #{id,jdbcType=BIGINT} + + \ No newline at end of file diff --git a/util/src/main/java/com/ccsens/util/JsonResponse.java b/util/src/main/java/com/ccsens/util/JsonResponse.java index da818e0f..537127d5 100644 --- a/util/src/main/java/com/ccsens/util/JsonResponse.java +++ b/util/src/main/java/com/ccsens/util/JsonResponse.java @@ -46,7 +46,6 @@ public class JsonResponse { private String msg; @ApiModelProperty(value="成功与否") private boolean success; - private String status = "success"; private JsonResponse() { }