diff --git a/src/main/java/cn/celess/blog/entity/WebUpdate.java b/src/main/java/cn/celess/blog/entity/WebUpdate.java index 8cb3ee6..4e2a99e 100644 --- a/src/main/java/cn/celess/blog/entity/WebUpdate.java +++ b/src/main/java/cn/celess/blog/entity/WebUpdate.java @@ -17,11 +17,12 @@ public class WebUpdate { private Date updateTime; + private boolean delete; + public WebUpdate() { } - public WebUpdate(String updateInfo, Date updateTime) { + public WebUpdate(String updateInfo) { this.updateInfo = updateInfo; - this.updateTime = updateTime; } } diff --git a/src/main/java/cn/celess/blog/mapper/WebUpdateInfoMapper.java b/src/main/java/cn/celess/blog/mapper/WebUpdateInfoMapper.java index d2fa669..ee9f119 100644 --- a/src/main/java/cn/celess/blog/mapper/WebUpdateInfoMapper.java +++ b/src/main/java/cn/celess/blog/mapper/WebUpdateInfoMapper.java @@ -27,5 +27,7 @@ public interface WebUpdateInfoMapper { List findAll(); + List findAllNotDeleted(); + WebUpdate getLastestOne(); } diff --git a/src/main/resources/mapper/WebUpdateInfoMapper.xml b/src/main/resources/mapper/WebUpdateInfoMapper.xml index ce12748..4f42e4e 100644 --- a/src/main/resources/mapper/WebUpdateInfoMapper.xml +++ b/src/main/resources/mapper/WebUpdateInfoMapper.xml @@ -2,47 +2,53 @@ - - - + + + + - - insert into web_update(update_info, update_time) - values (#{updateInfo}, #{updateTime}) - - SELECT LAST_INSERT_ID() AS id - + + + insert into web_update(wu_info, wu_time, is_delete) + values (#{updateInfo}, now(), false) update web_update - set update_info=#{info} - where update_id = #{id}; - + set wu_info=#{info} + where wu_id = #{id}; - - delete - from web_update - where update_id = #{id} - + + update web_update + set is_delete = true + where wu_id = #{id} + + + + + diff --git a/src/test/java/cn/celess/blog/mapper/WebUpdateInfoMapperTest.java b/src/test/java/cn/celess/blog/mapper/WebUpdateInfoMapperTest.java new file mode 100644 index 0000000..2ddd107 --- /dev/null +++ b/src/test/java/cn/celess/blog/mapper/WebUpdateInfoMapperTest.java @@ -0,0 +1,80 @@ +package cn.celess.blog.mapper; + +import cn.celess.blog.BaseTest; +import cn.celess.blog.entity.WebUpdate; +import org.junit.Test; +import org.springframework.beans.factory.annotation.Autowired; + +import java.util.List; + +import static org.junit.Assert.*; + +public class WebUpdateInfoMapperTest extends BaseTest { + + @Autowired + WebUpdateInfoMapper webUpdateInfoMapper; + + @Test + public void insert() { + WebUpdate webUpdate = generateUpdateInfo(); + assertNotNull(webUpdate); + } + + @Test + public void delete() { + WebUpdate webUpdate = generateUpdateInfo(); + assertEquals(1, webUpdateInfoMapper.delete(webUpdate.getId())); + assertTrue(webUpdateInfoMapper.findById(webUpdate.getId()).isDelete()); + } + + @Test + public void update() { + WebUpdate webUpdate = generateUpdateInfo(); + assertEquals(1, webUpdateInfoMapper.update(webUpdate.getId(), randomStr(6))); + } + + @Test + public void existsById() { + WebUpdate webUpdate = generateUpdateInfo(); + assertTrue(webUpdateInfoMapper.existsById(webUpdate.getId())); + } + + @Test + public void findById() { + WebUpdate webUpdate = generateUpdateInfo(); + WebUpdate byId = webUpdateInfoMapper.findById(webUpdate.getId()); + assertEquals(webUpdate.getUpdateInfo(), byId.getUpdateInfo()); + assertEquals(webUpdate.getId(), byId.getId()); + } + + @Test + public void findAll() { + List all = webUpdateInfoMapper.findAll(); + assertNotEquals(0, all.size()); + } + + @Test + public void findAllNotDeleted() { + this.delete(); + List allNotDeleted = webUpdateInfoMapper.findAllNotDeleted(); + allNotDeleted.forEach(webUpdate -> assertFalse(webUpdate.isDelete())); + } + + @Test + public void getLastestOne() { + WebUpdate webUpdate = generateUpdateInfo(); + List all = webUpdateInfoMapper.findAll(); + List allNotDeleted = webUpdateInfoMapper.findAllNotDeleted(); + all.sort(((o1, o2) -> (int) (o2.getId() - o1.getId()))); + allNotDeleted.sort(((o1, o2) -> (int) (o2.getId() - o1.getId()))); + assertEquals(webUpdate.getId(), all.get(0).getId()); + assertEquals(webUpdate.getId(), allNotDeleted.get(0).getId()); + assertEquals(webUpdate.getId(), webUpdateInfoMapper.getLastestOne().getId()); + } + + private WebUpdate generateUpdateInfo() { + WebUpdate webUpdate = new WebUpdate(randomStr(8)); + webUpdateInfoMapper.insert(webUpdate); + return webUpdate; + } +} \ No newline at end of file