8 changed files with 207 additions and 27 deletions
-
47src/main/java/com/qyft/gd/controller/TasksController.java
-
21src/main/java/com/qyft/gd/mapper/TasksMapper.java
-
10src/main/java/com/qyft/gd/model/dto/TaskDTO.java
-
14src/main/java/com/qyft/gd/model/entity/Tasks.java
-
31src/main/java/com/qyft/gd/model/vo/TaskListVO.java
-
18src/main/java/com/qyft/gd/service/TasksService.java
-
68src/main/java/com/qyft/gd/service/impl/TasksServiceImpl.java
-
25src/main/resources/mapper/TasksMapper.xml
@ -0,0 +1,21 @@ |
|||||
|
package com.qyft.gd.mapper; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.qyft.gd.model.entity.Tasks; |
||||
|
import com.qyft.gd.model.vo.TaskListVO; |
||||
|
import org.apache.ibatis.annotations.Mapper; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* 实验持久层接口 |
||||
|
*/ |
||||
|
@Mapper |
||||
|
public interface TasksMapper extends BaseMapper<Tasks> { |
||||
|
Page<TaskListVO> selectPage(Page<TaskListVO> page); |
||||
|
TaskListVO selectById(Long id); |
||||
|
Integer removeByIds(List<Long> ids); |
||||
|
|
||||
|
int stopTask(Long taskId); |
||||
|
} |
@ -0,0 +1,10 @@ |
|||||
|
package com.qyft.gd.model.dto; |
||||
|
|
||||
|
import io.swagger.v3.oas.annotations.media.Schema; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
@Data |
||||
|
public class TaskDTO { |
||||
|
@Schema(description = "实验名称") |
||||
|
private String name; |
||||
|
} |
@ -0,0 +1,31 @@ |
|||||
|
package com.qyft.gd.model.vo; |
||||
|
|
||||
|
import io.swagger.v3.oas.annotations.media.Schema; |
||||
|
import jakarta.validation.constraints.NotBlank; |
||||
|
import lombok.Data; |
||||
|
import lombok.EqualsAndHashCode; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
@EqualsAndHashCode(callSuper = false) |
||||
|
@Data |
||||
|
public class TaskListVO { |
||||
|
@Schema(description = "实验id") |
||||
|
private Long id; |
||||
|
|
||||
|
@Schema(description = "实验名称") |
||||
|
private String name; |
||||
|
|
||||
|
@NotBlank |
||||
|
@Schema(description = "开始时间") |
||||
|
private String startTime; |
||||
|
|
||||
|
@Schema(description = "创建人") |
||||
|
private Long createUser; |
||||
|
|
||||
|
@Schema(description = "结束时间") |
||||
|
private String endTime; |
||||
|
|
||||
|
@Schema(description = "状态 1 执行中 2 执行完毕") |
||||
|
private Integer status; |
||||
|
} |
@ -0,0 +1,18 @@ |
|||||
|
package com.qyft.gd.service; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||
|
import com.baomidou.mybatisplus.extension.service.IService; |
||||
|
import com.qyft.gd.model.entity.Tasks; |
||||
|
import com.qyft.gd.model.vo.TaskListVO; |
||||
|
import com.qyft.gd.system.common.base.BasePageQuery; |
||||
|
|
||||
|
/** |
||||
|
* 实验业务接口 |
||||
|
*/ |
||||
|
public interface TasksService extends IService<Tasks> { |
||||
|
IPage<TaskListVO> getPage(BasePageQuery pageQuery); |
||||
|
TaskListVO selectById(Long id); |
||||
|
int addTask(String taskName); |
||||
|
int removeByIds(String ids); |
||||
|
int stopTask(Long taskId); |
||||
|
} |
@ -0,0 +1,68 @@ |
|||||
|
package com.qyft.gd.service.impl; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
||||
|
import com.qyft.gd.mapper.TasksMapper; |
||||
|
import com.qyft.gd.model.entity.Tasks; |
||||
|
import com.qyft.gd.model.vo.TaskListVO; |
||||
|
import com.qyft.gd.service.TasksService; |
||||
|
import com.qyft.gd.system.common.base.BasePageQuery; |
||||
|
import com.qyft.gd.system.model.entity.User; |
||||
|
import com.qyft.gd.system.service.UserService; |
||||
|
import lombok.RequiredArgsConstructor; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
|
||||
|
import java.util.Arrays; |
||||
|
import java.util.List; |
||||
|
import java.util.stream.Collectors; |
||||
|
|
||||
|
/** |
||||
|
* 实验业务实现类 |
||||
|
*/ |
||||
|
@Service |
||||
|
@RequiredArgsConstructor |
||||
|
public class TasksServiceImpl extends ServiceImpl<TasksMapper, Tasks> implements TasksService { |
||||
|
|
||||
|
private final TasksMapper tasksMapper; |
||||
|
private final UserService userService; |
||||
|
|
||||
|
@Override |
||||
|
public IPage<TaskListVO> getPage(BasePageQuery pageQuery) { |
||||
|
// 构建分页对象 |
||||
|
Page<TaskListVO> page = new Page<>(pageQuery.getPageNum(), pageQuery.getPageSize()); |
||||
|
|
||||
|
return tasksMapper.selectPage(page); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public TaskListVO selectById(Long id) { |
||||
|
return tasksMapper.selectById(id); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public int addTask(String taskName) { |
||||
|
Tasks tasks = new Tasks(); |
||||
|
tasks.setName(taskName); |
||||
|
User user = userService.currentUser(); |
||||
|
tasks.setCreateUser(user.getId()); |
||||
|
tasks.setStatus(1); |
||||
|
tasks.setIsDeleted(0); |
||||
|
|
||||
|
return tasksMapper.insert(tasks); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public int removeByIds(String ids) { |
||||
|
List<Long> idsArr = Arrays.stream(ids.split(",")) |
||||
|
.map(Long::parseLong) |
||||
|
.collect(Collectors.toList()); |
||||
|
return tasksMapper.removeByIds(idsArr); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public int stopTask(Long taskId) { |
||||
|
return tasksMapper.stopTask(taskId); |
||||
|
} |
||||
|
|
||||
|
} |
@ -0,0 +1,25 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
||||
|
<mapper namespace="com.qyft.gd.mapper.TasksMapper"> |
||||
|
|
||||
|
<select id="selectPage" resultType="com.qyft.gd.model.vo.TaskListVO"> |
||||
|
SELECT * FROM tasks WHERE is_deleted = 0 |
||||
|
</select> |
||||
|
|
||||
|
<select id="selectById" resultType="com.qyft.gd.model.vo.TaskListVO"> |
||||
|
SELECT * FROM tasks WHERE is_deleted = 0 AND id = #{id} |
||||
|
</select> |
||||
|
<update id="removeByIds"> |
||||
|
UPDATE tasks |
||||
|
SET is_deleted = 1 |
||||
|
WHERE id IN |
||||
|
<foreach collection="list" item="id" index="index" open="(" separator="," close=")"> |
||||
|
#{id} |
||||
|
</foreach> |
||||
|
</update> |
||||
|
<update id="stopTask"> |
||||
|
UPDATE tasks |
||||
|
SET status = 2 |
||||
|
WHERE id = #{taskId} AND is_deleted = 0 |
||||
|
</update> |
||||
|
</mapper> |
Write
Preview
Loading…
Cancel
Save
Reference in new issue