diff --git a/src/main/java/com/gunshi/project/xyt/controller/BroadcastWarnController.java b/src/main/java/com/gunshi/project/xyt/controller/BroadcastWarnController.java index 6b574db..a955be3 100644 --- a/src/main/java/com/gunshi/project/xyt/controller/BroadcastWarnController.java +++ b/src/main/java/com/gunshi/project/xyt/controller/BroadcastWarnController.java @@ -1,6 +1,5 @@ package com.gunshi.project.xyt.controller; -import com.baomidou.mybatisplus.core.toolkit.IdWorker; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.gunshi.core.result.R; import com.gunshi.project.xyt.entity.so.BroadcastWarnPageSo; @@ -16,8 +15,6 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import java.util.Date; - /** * 描述: * author: xusan @@ -34,11 +31,8 @@ public class BroadcastWarnController { @Operation(summary = "新增") @PostMapping("/insert") - public R insert(@Validated(Insert.class) @RequestBody BroadcastWarn dto) { - dto.setId(IdWorker.getId()); - dto.setCreateTime(new Date()); - boolean result = service.save(dto); - return R.ok(result ? dto : null); + public R insert(@Validated(Insert.class) @RequestBody BroadcastWarn dto) { + return R.ok(service.saveData(dto)); } diff --git a/src/main/java/com/gunshi/project/xyt/model/BroadcastWarn.java b/src/main/java/com/gunshi/project/xyt/model/BroadcastWarn.java index 083362b..2546157 100644 --- a/src/main/java/com/gunshi/project/xyt/model/BroadcastWarn.java +++ b/src/main/java/com/gunshi/project/xyt/model/BroadcastWarn.java @@ -17,6 +17,7 @@ import lombok.Data; import java.io.Serializable; import java.util.Date; +import java.util.List; /** * 描述: 广播预警信息 @@ -53,6 +54,10 @@ public class BroadcastWarn implements Serializable { @Schema(description="站点名称") private String name; + @TableField(exist = false) + @Schema(description="站点id集合") + private List stationIds; + /** * 告警内容 */ diff --git a/src/main/java/com/gunshi/project/xyt/service/BroadcastWarnService.java b/src/main/java/com/gunshi/project/xyt/service/BroadcastWarnService.java index bd98539..90ea16c 100644 --- a/src/main/java/com/gunshi/project/xyt/service/BroadcastWarnService.java +++ b/src/main/java/com/gunshi/project/xyt/service/BroadcastWarnService.java @@ -1,15 +1,19 @@ package com.gunshi.project.xyt.service; +import com.baomidou.mybatisplus.core.toolkit.IdWorker; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.gunshi.project.xyt.entity.so.BroadcastWarnPageSo; import com.gunshi.project.xyt.mapper.BroadcastWarnMapper; import com.gunshi.project.xyt.model.BroadcastWarn; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; /** * 描述: 广播预警信息 @@ -25,6 +29,19 @@ public class BroadcastWarnService extends ServiceImpl pageQuery(BroadcastWarnPageSo page) { return this.baseMapper.pageQuery(page.getPageSo().toPage(),page); } + + public Boolean saveData(BroadcastWarn dto) { + List stationIds = dto.getStationIds(); + List list = stationIds.stream().map(stationId->{ + BroadcastWarn warn = new BroadcastWarn(); + BeanUtils.copyProperties(dto,warn); + warn.setId(IdWorker.getId()); + warn.setStationId(stationId); + warn.setCreateTime(new Date()); + return warn; + }).collect(Collectors.toList()); + return this.saveBatch(list); + } }