From c7efa1980a87566e47b1a3e5f13c7097859bf9b9 Mon Sep 17 00:00:00 2001 From: GGB <1223416496@qq.com> Date: Mon, 15 May 2023 11:24:49 +0800 Subject: [PATCH] Add homepage work card --- .../pinnacle/controller/WorkController.java | 7 ++ .../com/cfive/pinnacle/mapper/WorkMapper.java | 2 +- .../cfive/pinnacle/service/IWorkService.java | 2 + .../service/impl/WorkServiceImpl.java | 17 ++++ .../src/main/resources/mapper/WorkMapper.xml | 22 +++++ ui/src/assets/svg/workpage.svg | 1 + ui/src/components/work/WorkCard.vue | 94 +++++++++++++++++++ 7 files changed, 144 insertions(+), 1 deletion(-) create mode 100644 ui/src/assets/svg/workpage.svg create mode 100644 ui/src/components/work/WorkCard.vue diff --git a/Pinnacle/src/main/java/com/cfive/pinnacle/controller/WorkController.java b/Pinnacle/src/main/java/com/cfive/pinnacle/controller/WorkController.java index cc2a7f3..6ca5ce5 100644 --- a/Pinnacle/src/main/java/com/cfive/pinnacle/controller/WorkController.java +++ b/Pinnacle/src/main/java/com/cfive/pinnacle/controller/WorkController.java @@ -50,6 +50,13 @@ public class WorkController { return ResponseResult.build(ResponseCode.DATABASE_SELECT_OK, "success", workService.getTodo(userId)); } + @GetMapping("/card") + public ResponseResult getCard() { +// Long userId = WebUtil.getLoginUser().getUser().getId(); + long userId = 1; + return ResponseResult.build(ResponseCode.DATABASE_SELECT_OK, "success", workService.getCard(userId)); + } + @GetMapping("/complete") public ResponseResult getComplete() { Long userId = WebUtil.getLoginUser().getUser().getId(); diff --git a/Pinnacle/src/main/java/com/cfive/pinnacle/mapper/WorkMapper.java b/Pinnacle/src/main/java/com/cfive/pinnacle/mapper/WorkMapper.java index 8da46d5..4a2cb5a 100644 --- a/Pinnacle/src/main/java/com/cfive/pinnacle/mapper/WorkMapper.java +++ b/Pinnacle/src/main/java/com/cfive/pinnacle/mapper/WorkMapper.java @@ -19,7 +19,7 @@ public interface WorkMapper extends BaseMapper { List getAll(); List getTodo(Long userId); - + List getCard(Long userId); List getComplete(Long userId); Work getWork(Long workId); diff --git a/Pinnacle/src/main/java/com/cfive/pinnacle/service/IWorkService.java b/Pinnacle/src/main/java/com/cfive/pinnacle/service/IWorkService.java index bd3efa4..1a063f2 100644 --- a/Pinnacle/src/main/java/com/cfive/pinnacle/service/IWorkService.java +++ b/Pinnacle/src/main/java/com/cfive/pinnacle/service/IWorkService.java @@ -17,6 +17,8 @@ import java.util.List; public interface IWorkService extends IService { List getAll(); List getTodo(Long userId); + + List getCard(Long userId); List getComplete(Long userId); Work getOne(Long workId); diff --git a/Pinnacle/src/main/java/com/cfive/pinnacle/service/impl/WorkServiceImpl.java b/Pinnacle/src/main/java/com/cfive/pinnacle/service/impl/WorkServiceImpl.java index d8af2f6..7000bbd 100644 --- a/Pinnacle/src/main/java/com/cfive/pinnacle/service/impl/WorkServiceImpl.java +++ b/Pinnacle/src/main/java/com/cfive/pinnacle/service/impl/WorkServiceImpl.java @@ -13,6 +13,9 @@ import com.cfive.pinnacle.service.IWorkService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Isolation; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; import java.text.DecimalFormat; import java.time.LocalDateTime; @@ -55,6 +58,16 @@ public class WorkServiceImpl extends ServiceImpl implements IW return workList; } + @Override + public List getCard(Long userId) { + List workList = workMapper.getCard(userId); + for (Work work: + workList) { + work.setPublisherName(getUserName(work.getPublisherId())); + } + return workList; + } + @Override public List getComplete(Long userId) { List workList = workMapper.getComplete(userId); @@ -100,6 +113,7 @@ public class WorkServiceImpl extends ServiceImpl implements IW } @Override + @Transactional(isolation = Isolation.READ_COMMITTED,propagation = Propagation.REQUIRED) public boolean addWork(Work work) { boolean flag = true; if (workMapper.insert(work) <= 0) { @@ -119,6 +133,7 @@ public class WorkServiceImpl extends ServiceImpl implements IW } @Override + @Transactional(isolation = Isolation.READ_COMMITTED,propagation = Propagation.REQUIRED) public boolean deleteByWorkId(Long workId) { boolean flag = false; if (userWorkMapper.delete(new QueryWrapper().eq("work_id", workId)) > 0 && workMapper.deleteById(workId) > 0) { @@ -128,11 +143,13 @@ public class WorkServiceImpl extends ServiceImpl implements IW } @Override + @Transactional(isolation = Isolation.READ_COMMITTED,propagation = Propagation.REQUIRED) public boolean updateStatus(UserWork userWork) { return userWorkMapper.update(userWork, new UpdateWrapper().eq("work_id", userWork.getWorkId()).eq("user_id", userWork.getUserId())) > 0; } @Override + @Transactional(isolation = Isolation.READ_COMMITTED,propagation = Propagation.REQUIRED) public boolean updateWork(Work work) { boolean flag = true; if (userWorkMapper.delete(new QueryWrapper().eq("work_id", work.getId())) <= 0) { diff --git a/Pinnacle/src/main/resources/mapper/WorkMapper.xml b/Pinnacle/src/main/resources/mapper/WorkMapper.xml index 38e5e89..eeefd6a 100644 --- a/Pinnacle/src/main/resources/mapper/WorkMapper.xml +++ b/Pinnacle/src/main/resources/mapper/WorkMapper.xml @@ -93,6 +93,28 @@ and tuw.deleted = 0 order by w.deadline asc, w.id desc; +