|
@@ -16,7 +16,9 @@
|
|
*/
|
|
*/
|
|
package org.springblade.business.controller;
|
|
package org.springblade.business.controller;
|
|
|
|
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
import io.swagger.annotations.Api;
|
|
import io.swagger.annotations.Api;
|
|
import io.swagger.annotations.ApiOperation;
|
|
import io.swagger.annotations.ApiOperation;
|
|
import io.swagger.annotations.ApiParam;
|
|
import io.swagger.annotations.ApiParam;
|
|
@@ -26,6 +28,7 @@ import lombok.AllArgsConstructor;
|
|
import org.apache.commons.lang.StringUtils;
|
|
import org.apache.commons.lang.StringUtils;
|
|
import org.springblade.business.entity.MessageWarning;
|
|
import org.springblade.business.entity.MessageWarning;
|
|
import org.springblade.business.vo.MessageWarningVO;
|
|
import org.springblade.business.vo.MessageWarningVO;
|
|
|
|
+import org.springblade.business.wrapper.MessageWarningWrapper;
|
|
import org.springblade.core.mp.support.Condition;
|
|
import org.springblade.core.mp.support.Condition;
|
|
import org.springblade.core.mp.support.Query;
|
|
import org.springblade.core.mp.support.Query;
|
|
import org.springblade.core.secure.utils.AuthUtil;
|
|
import org.springblade.core.secure.utils.AuthUtil;
|
|
@@ -50,7 +53,7 @@ import java.util.List;
|
|
*/
|
|
*/
|
|
@RestController
|
|
@RestController
|
|
@AllArgsConstructor
|
|
@AllArgsConstructor
|
|
-@RequestMapping("/OperationWarning")
|
|
|
|
|
|
+@RequestMapping("/messageWarning")
|
|
@Api(value = "消息提醒", tags = "消息提醒接口")
|
|
@Api(value = "消息提醒", tags = "消息提醒接口")
|
|
public class MessageWarningController extends BladeController {
|
|
public class MessageWarningController extends BladeController {
|
|
|
|
|
|
@@ -58,6 +61,68 @@ public class MessageWarningController extends BladeController {
|
|
|
|
|
|
private final IDictBizClient dictBizClient;
|
|
private final IDictBizClient dictBizClient;
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 标记已读
|
|
|
|
+ */
|
|
|
|
+ @PostMapping("/setMessageWarningRead")
|
|
|
|
+ @ApiOperationSupport(order = 5)
|
|
|
|
+ @ApiOperation(value = "标记已读")
|
|
|
|
+ public R<Boolean> setMessageWarningRead(MessageWarningVO vo){
|
|
|
|
+ if(vo.getIds() != null && vo.getIds().size() > 0){
|
|
|
|
+ try{
|
|
|
|
+ this.messageWarningService.update(Wrappers.<MessageWarning>lambdaUpdate().set(MessageWarning::getIsRead, 1).in(MessageWarning::getId, vo.getIds()));
|
|
|
|
+ return R.data(true);
|
|
|
|
+ }catch (Exception e){
|
|
|
|
+ e.printStackTrace();
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ return R.data(300, false, "标记失败");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 获取当前用户的消息数量
|
|
|
|
+ */
|
|
|
|
+ @GetMapping("/queryCurrentUserMessageCount")
|
|
|
|
+ @ApiOperationSupport(order = 4)
|
|
|
|
+ @ApiOperation(value = "获取当前用户的消息数量")
|
|
|
|
+ public R<MessageWarningVO> queryCurrentUserMessageCount(){
|
|
|
|
+ MessageWarningVO vo = new MessageWarningVO();
|
|
|
|
+
|
|
|
|
+ for(int i = 1, l = 6; i < l; i ++){
|
|
|
|
+ LambdaQueryWrapper<MessageWarning> wrapper = Wrappers.lambdaQuery();
|
|
|
|
+ //当前用户
|
|
|
|
+ wrapper.eq(MessageWarning::getPushUser, AuthUtil.getUserId());
|
|
|
|
+ wrapper.eq(MessageWarning::getType, i);
|
|
|
|
+ wrapper.eq(MessageWarning::getIsRead, 0);
|
|
|
|
+
|
|
|
|
+ //获取数量
|
|
|
|
+ Long typeNumber = this.messageWarningService.count(wrapper);
|
|
|
|
+
|
|
|
|
+ switch (i){
|
|
|
|
+ case 1:
|
|
|
|
+ vo.setTypeOneNumber(typeNumber);
|
|
|
|
+ break;
|
|
|
|
+ case 2:
|
|
|
|
+ vo.setTypeTowNumber(typeNumber);
|
|
|
|
+ break;
|
|
|
|
+ case 3:
|
|
|
|
+ vo.setTypeThreeNumber(typeNumber);
|
|
|
|
+ break;
|
|
|
|
+ case 4:
|
|
|
|
+ vo.setTypeFourNumber(typeNumber);
|
|
|
|
+ break;
|
|
|
|
+ case 5:
|
|
|
|
+ vo.setTypeFiveNumber(typeNumber);
|
|
|
|
+ break;
|
|
|
|
+ default:
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return R.data(vo);
|
|
|
|
+ }
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 获取消息类型(左侧菜单)
|
|
* 获取消息类型(左侧菜单)
|
|
*/
|
|
*/
|
|
@@ -78,7 +143,11 @@ public class MessageWarningController extends BladeController {
|
|
@GetMapping("/list")
|
|
@GetMapping("/list")
|
|
@ApiOperationSupport(order = 1)
|
|
@ApiOperationSupport(order = 1)
|
|
@ApiOperation(value = "分页", notes = "传入operationWarning")
|
|
@ApiOperation(value = "分页", notes = "传入operationWarning")
|
|
- public R<IPage<MessageWarning>> list(MessageWarningVO vo, Query query) {
|
|
|
|
|
|
+ public R<IPage<MessageWarningVO>> list(MessageWarningVO vo, Query query) {
|
|
|
|
+ //置空项目及合同段ID
|
|
|
|
+ vo.setProjectId(null);
|
|
|
|
+ vo.setContractId(null);
|
|
|
|
+
|
|
QueryWrapper<MessageWarning> wrapper = Condition.getQueryWrapper(vo);
|
|
QueryWrapper<MessageWarning> wrapper = Condition.getQueryWrapper(vo);
|
|
//获取当前人的数据
|
|
//获取当前人的数据
|
|
wrapper.lambda().eq(MessageWarning::getPushUser, AuthUtil.getUserId().toString());
|
|
wrapper.lambda().eq(MessageWarning::getPushUser, AuthUtil.getUserId().toString());
|
|
@@ -87,9 +156,27 @@ public class MessageWarningController extends BladeController {
|
|
}
|
|
}
|
|
|
|
|
|
//时间倒序,状态正序(已读在后,未读在前)
|
|
//时间倒序,状态正序(已读在后,未读在前)
|
|
- wrapper.lambda().orderByDesc(MessageWarning::getCreateTime).orderByAsc(MessageWarning::getStatus);
|
|
|
|
|
|
+ wrapper.lambda().orderByDesc(MessageWarning::getCreateTime).orderByAsc(MessageWarning::getIsRead);
|
|
|
|
+
|
|
|
|
+ IPage<MessageWarningVO> iPage = MessageWarningWrapper.build().pageVO(this.messageWarningService.page(Condition.getPage(query), wrapper));
|
|
|
|
+
|
|
|
|
+ if(iPage.getRecords() != null && iPage.getRecords().size() > 0){
|
|
|
|
+ //获取类型
|
|
|
|
+ List<DictBiz> dictBizs = this.dictBizClient.getList("business_message_type", "notRoot").getData();
|
|
|
|
+
|
|
|
|
+ iPage.getRecords().forEach(reVO -> {
|
|
|
|
+ if(dictBizs != null && dictBizs.size() > 0){
|
|
|
|
+ for(DictBiz biz : dictBizs){
|
|
|
|
+ if(biz.getDictKey().equals(reVO.getType().toString())){
|
|
|
|
+ reVO.setTypeValue(biz.getDictValue());
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
|
|
- return R.data(this.messageWarningService.page(Condition.getPage(query), wrapper));
|
|
|
|
|
|
+ return R.data(iPage);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|