diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/RequestVo.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/RequestVo.java new file mode 100644 index 0000000..4b3099a --- /dev/null +++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/RequestVo.java @@ -0,0 +1,30 @@ +package com.ruoyi.common.core.domain; + +import lombok.Data; + +/** + * @author yuxiangyong + * @create 2023-08-16 16:58 + */ +@Data +public class RequestVo { + + /** + * 查询的当前页 + */ + private Integer currentPage = 1; + + /** + * 查询每页的数量 + */ + private Integer pageSize = 20; + + /** + * 数据库查询偏移量 + */ + private Integer offset; + + public Integer getOffset() { + return (currentPage - 1) * pageSize; + } +} diff --git a/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/controller/LarkActiveController.java b/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/controller/LarkActiveController.java new file mode 100644 index 0000000..a5296ec --- /dev/null +++ b/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/controller/LarkActiveController.java @@ -0,0 +1,91 @@ +package com.ruoyi.flyingbook.controller; + +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.flyingbook.domain.LarkActive; +import com.ruoyi.flyingbook.domain.edi.ResponseVo; +import com.ruoyi.flyingbook.domain.larkactive.LarkActiveRequest; +import com.ruoyi.flyingbook.domain.larkactive.LarkActiveVo; +import com.ruoyi.flyingbook.service.ILarkActiveService; +import com.ruoyi.flyingbook.service.ILarkUserActiveInviteRelatoinService; +import com.ruoyi.flyingbook.service.ILarkUserActiveRelatoinService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +@Slf4j +@RestController +public class LarkActiveController extends BaseController { + + @Autowired + private ILarkActiveService larkActiveService; + @Autowired + private ILarkUserActiveRelatoinService larkUserActiveRelatoinService; + @Autowired + private ILarkUserActiveInviteRelatoinService larkUserActiveInviteRelatoinService; + + /** + * 分页查询活动 + */ + @PostMapping("/queryActive") + public ResponseVo queryActive(@RequestBody LarkActiveRequest request) { + return larkActiveService.queryPage(request); + } + + /** + * 通过活动id查询 活动明细 todo yxy 判断当前用户是否完成 + */ + @PostMapping("/getAcitveById") + public ResponseVo getAcitveById(@RequestBody LarkActiveRequest request) { + LarkActive larkActive = larkActiveService.selectLarkActiveById(request.getLarkActiveId()); + return new ResponseVo(larkActive); + } + + /** + * 上传活动图片 todo yxy + */ + @PostMapping("/uploadActiveFile") + public ResponseVo uploadActiveFile(@RequestBody LarkActiveRequest request) { + LarkActive larkActive = larkActiveService.selectLarkActiveById(request.getLarkActiveId()); + return new ResponseVo(larkActive); + } + + /** + * 查询所有待审核的提交信息 todo yxy + */ + @PostMapping("/queryWaitReview") + public ResponseVo queryWaitReview() { + return new ResponseVo(); + } + + + /** + * 查询已经完成所有活动的人的名称 todo yxy + */ + @PostMapping("/queryCompleteActiveList") + public ResponseVo queryCompleteActiveList() { + return new ResponseVo(); + } + + /** + * 查询当前登陆人已经完成所有活动的名称 todo yxy + */ + @PostMapping("/queryMyCompleteActiveList") + public ResponseVo queryMyCompleteActiveList() { + return new ResponseVo(); + } + + + /** + * 查询邀请的top 10的人的信息 todo yxy + */ + @PostMapping("/queryInviteTopTen") + public ResponseVo queryInviteTopTen() { + return new ResponseVo(); + } + + + +} + diff --git a/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/domain/ResponseVo.java b/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/domain/ResponseVo.java new file mode 100644 index 0000000..8386b59 --- /dev/null +++ b/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/domain/ResponseVo.java @@ -0,0 +1,67 @@ +package com.ruoyi.flyingbook.domain.edi; + +import lombok.Data; +import lombok.NoArgsConstructor; +import org.apache.commons.collections4.CollectionUtils; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author yuxiangyong + * @create 2023-05-07 21:47 + */ +@Data +@NoArgsConstructor +public class ResponseVo { + + private Boolean successFlag; + + private T data; + + private Integer page; + private Integer pageSize; + + private Integer totalPage; + + private List dataList; + + private String errorMessage; + private List errorMessageList; + + public ResponseVo(Integer page,Integer pageSize) { + this.page = page; + this.pageSize = pageSize; + } + + public ResponseVo(Integer page,Integer pageSize,List data,Integer totalPage) { + this.page = page; + this.pageSize = pageSize; + this.successFlag = Boolean.TRUE; + this.dataList = dataList; + this.totalPage = totalPage; + } + + public ResponseVo(T data) { + this.successFlag = Boolean.TRUE; + this.data = data; + } + + public ResponseVo(List dataList) { + this.successFlag = Boolean.TRUE; + this.dataList = dataList; + } + + public ResponseVo(Boolean successFlag, String errorMessage) { + this.successFlag = successFlag; + this.errorMessage = errorMessage; + } + + public ResponseVo(Boolean successFlag, String... errorMsg) { + this.successFlag = successFlag; + this.errorMessageList = new ArrayList<>(); + for (String s : errorMsg) { + this.errorMessageList.add(s); + } + } +} diff --git a/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/domain/larkactive/LarkActiveRequest.java b/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/domain/larkactive/LarkActiveRequest.java new file mode 100644 index 0000000..567d3b8 --- /dev/null +++ b/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/domain/larkactive/LarkActiveRequest.java @@ -0,0 +1,23 @@ +package com.ruoyi.flyingbook.domain.larkactive; + +import com.ruoyi.common.core.domain.RequestVo; +import lombok.Data; + +/** + * @author yuxiangyong + * @create 2023-08-16 16:58 + */ +@Data +public class LarkActiveRequest extends RequestVo { + + private String companyName; + + private Long larkActiveId; + private String userName; + + /** + * @see com.ruoyi.common.enums.FlagStatus + */ + private Long flag; + +} diff --git a/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/domain/larkactive/LarkActiveVo.java b/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/domain/larkactive/LarkActiveVo.java new file mode 100644 index 0000000..15a0d57 --- /dev/null +++ b/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/domain/larkactive/LarkActiveVo.java @@ -0,0 +1,20 @@ +package com.ruoyi.flyingbook.domain.larkactive; + +import com.ruoyi.flyingbook.domain.LarkActive; +import lombok.Data; + +/** + * 【请填写功能名称】对象 lark_active + * + * @author ruoyi + * @date 2023-08-16 + */ +@Data +public class LarkActiveVo extends LarkActive { + + /** + * 当前用户是否完成 + */ + private Boolean complete; + +} diff --git a/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/mapper/LarkActiveMapper.java b/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/mapper/LarkActiveMapper.java index 7cbe1a2..f8aa265 100644 --- a/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/mapper/LarkActiveMapper.java +++ b/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/mapper/LarkActiveMapper.java @@ -1,6 +1,7 @@ package com.ruoyi.flyingbook.mapper; import com.ruoyi.flyingbook.domain.LarkActive; +import com.ruoyi.flyingbook.domain.larkactive.LarkActiveRequest; import java.util.List; @@ -26,7 +27,8 @@ public interface LarkActiveMapper { * @return 【请填写功能名称】集合 */ public List selectLarkActiveList(LarkActive larkActive); - + public Integer count(LarkActive larkActive); + public List queryPage(LarkActiveRequest request); /** * 新增【请填写功能名称】 * diff --git a/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/service/ILarkActiveService.java b/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/service/ILarkActiveService.java index 473e316..b4038df 100644 --- a/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/service/ILarkActiveService.java +++ b/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/service/ILarkActiveService.java @@ -2,6 +2,9 @@ package com.ruoyi.flyingbook.service; import com.ruoyi.flyingbook.domain.LarkActive; +import com.ruoyi.flyingbook.domain.edi.ResponseVo; +import com.ruoyi.flyingbook.domain.larkactive.LarkActiveRequest; +import com.ruoyi.flyingbook.domain.larkactive.LarkActiveVo; import java.util.List; @@ -19,6 +22,7 @@ public interface ILarkActiveService { * @return 【请填写功能名称】 */ public LarkActive selectLarkActiveById(Long id); + public LarkActiveVo getActiveInfo(LarkActiveRequest request); /** * 查询【请填写功能名称】列表 @@ -27,6 +31,7 @@ public interface ILarkActiveService { * @return 【请填写功能名称】集合 */ public List selectLarkActiveList(LarkActive larkActive); + ResponseVo queryPage(LarkActiveRequest request); /** * 新增【请填写功能名称】 diff --git a/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/service/impl/LarkActiveServiceImpl.java b/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/service/impl/LarkActiveServiceImpl.java index 96ec27d..abe3c3b 100644 --- a/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/service/impl/LarkActiveServiceImpl.java +++ b/ruoyi-flyingbook/src/main/java/com/ruoyi/flyingbook/service/impl/LarkActiveServiceImpl.java @@ -1,9 +1,18 @@ package com.ruoyi.flyingbook.service.impl; +import com.ruoyi.common.enums.FlagStatus; import com.ruoyi.common.utils.DateUtils; import com.ruoyi.flyingbook.domain.LarkActive; +import com.ruoyi.flyingbook.domain.LarkUserActiveRelatoin; +import com.ruoyi.flyingbook.domain.edi.ResponseVo; +import com.ruoyi.flyingbook.domain.larkactive.LarkActiveRequest; +import com.ruoyi.flyingbook.domain.larkactive.LarkActiveVo; import com.ruoyi.flyingbook.mapper.LarkActiveMapper; +import com.ruoyi.flyingbook.mapper.LarkUserActiveRelatoinMapper; import com.ruoyi.flyingbook.service.ILarkActiveService; +import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -19,6 +28,8 @@ import java.util.List; public class LarkActiveServiceImpl implements ILarkActiveService { @Autowired private LarkActiveMapper larkActiveMapper; + @Autowired + private LarkUserActiveRelatoinMapper larkUserActiveRelatoinMapper; /** * 查询【请填写功能名称】 @@ -31,6 +42,28 @@ public class LarkActiveServiceImpl implements ILarkActiveService { return larkActiveMapper.selectLarkActiveById(id); } + @Override + public LarkActiveVo getActiveInfo(LarkActiveRequest request) { + LarkActiveVo result = new LarkActiveVo(); + if (request == null || request.getLarkActiveId() == null){ + return result; + } + + LarkActive larkActive = larkActiveMapper.selectLarkActiveById(request.getLarkActiveId()); + if (larkActive != null){ + BeanUtils.copyProperties(larkActive,result); + } + if (StringUtils.isNotBlank(request.getUserName())){ + LarkUserActiveRelatoin relatoin = new LarkUserActiveRelatoin(); + relatoin.setFlag(FlagStatus.OK.getCode()); + relatoin.setActiveId(request.getLarkActiveId()); + relatoin.setUserName(request.getUserName()); + List larkUserActiveRelatoins = larkUserActiveRelatoinMapper.selectLarkUserActiveRelatoinList(relatoin); + result.setComplete(CollectionUtils.isNotEmpty(larkUserActiveRelatoins)); + } + return result; + } + /** * 查询【请填写功能名称】列表 * @@ -42,6 +75,22 @@ public class LarkActiveServiceImpl implements ILarkActiveService { return larkActiveMapper.selectLarkActiveList(larkActive); } + @Override + public ResponseVo queryPage(LarkActiveRequest request) { + if (request == null || StringUtils.isBlank(request.getCompanyName())){ + return new ResponseVo(request.getCurrentPage(),request.getPageSize()); + } + request.setFlag(FlagStatus.OK.getCode()); + LarkActive larkActive = new LarkActive(); + BeanUtils.copyProperties(request,larkActive); + Integer count = larkActiveMapper.count(larkActive); + if (count > 0){ + List larkActives = larkActiveMapper.queryPage(request); + return new ResponseVo(request.getCurrentPage(),request.getPageSize(),larkActives,count); + } + return new ResponseVo(request.getCurrentPage(),request.getPageSize(),null,count); + } + /** * 新增【请填写功能名称】 * diff --git a/ruoyi-flyingbook/src/main/resources/mapper/LarkActiveMapper.xml b/ruoyi-flyingbook/src/main/resources/mapper/LarkActiveMapper.xml index a185cb7..56da2e4 100644 --- a/ruoyi-flyingbook/src/main/resources/mapper/LarkActiveMapper.xml +++ b/ruoyi-flyingbook/src/main/resources/mapper/LarkActiveMapper.xml @@ -40,6 +40,37 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and flag = #{flag} + + + +