Browse Source

新增了代办未读个数接口

dev-V1.0.1
ganhao 6 months ago
parent
commit
4ff8b9693c
  1. 31
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enterprise/AppTodoItemController.java
  2. 9
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enterprise/EnforcementEducationServicesController.java
  3. 45
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/TodoStatisticsVo.java
  4. 9
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/EnforcementEducationServicesMapper.java
  5. 7
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/IEnforcementEducationServicesService.java
  6. 25
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementEducationServicesServiceImpl.java
  7. 17
      zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EnforcementEducationServicesMapper.xml

31
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enterprise/AppTodoItemController.java

@ -2,6 +2,8 @@ package com.zdxt.enforcementcode.controller.app.enterprise;
import java.util.List; import java.util.List;
import com.zdxt.enforcementcode.domain.vo.TodoStatisticsVo;
import com.zdxt.enforcementcode.service.IEnforcementEducationServicesService;
import com.zdxt.enforcementcode.service.ITodoItemService; import com.zdxt.enforcementcode.service.ITodoItemService;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse; import jakarta.servlet.http.HttpServletResponse;
@ -36,6 +38,8 @@ public class AppTodoItemController extends BaseController {
private final ITodoItemService todoItemService; private final ITodoItemService todoItemService;
private final IEnforcementEducationServicesService educationServicesService;
/** /**
* 查询待办事项列表 * 查询待办事项列表
*/ */
@ -102,4 +106,31 @@ public class AppTodoItemController extends BaseController {
@PathVariable String[] ids) { @PathVariable String[] ids) {
return toAjax(todoItemService.deleteWithValidByIds(List.of(ids), true)); return toAjax(todoItemService.deleteWithValidByIds(List.of(ids), true));
} }
/**
* 获取待办事项统计信息
* 返回普法服务、执法评价、执法预告的未读个数及总数
*/
@GetMapping("/statistics")
public R<TodoStatisticsVo> getStatistics() {
TodoStatisticsVo statistics = new TodoStatisticsVo();
// 1. 统计普法服务未读个数
Long pffwCount = educationServicesService.countUnreadEducationServices();
statistics.setPffwCount(pffwCount != null ? pffwCount : 0L);
// 2. 执法评价未读个数(暂时默认为0)
statistics.setZfpjCount(0L);
// 3. 执法预告未读个数(暂时默认为0)
statistics.setZfygCount(0L);
// 4. 计算总未读个数
Long totalCount = statistics.getPffwCount()
+ statistics.getZfpjCount()
+ statistics.getZfygCount();
statistics.setTotalCount(totalCount);
return R.ok(statistics);
}
} }

9
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enterprise/EnforcementEducationServicesController.java

@ -51,4 +51,13 @@ public class EnforcementEducationServicesController extends BaseController {
public R<EnforcementEducationServicesVo> getInfo(String id) { public R<EnforcementEducationServicesVo> getInfo(String id) {
return R.ok(enforcementEducationServicesService.queryById(id)); return R.ok(enforcementEducationServicesService.queryById(id));
} }
/**
* 统计当前用户企业的普法未读个数
*/
@GetMapping("/unreadCount")
public R<Long> getUnreadCount() {
Long unreadCount = enforcementEducationServicesService.countUnreadEducationServices();
return R.ok(unreadCount);
}
} }

45
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/TodoStatisticsVo.java

@ -0,0 +1,45 @@
package com.zdxt.enforcementcode.domain.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
/**
* 待办事项统计视图对象
*
* @author Lion Li
* @date 2026-05-15
*/
@Data
@Schema(description = "待办事项统计")
public class TodoStatisticsVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 普法服务未读个数
*/
@Schema(description = "普法服务未读个数")
private Long pffwCount;
/**
* 执法评价未读个数
*/
@Schema(description = "执法评价未读个数")
private Long zfpjCount;
/**
* 执法预告未读个数
*/
@Schema(description = "执法预告未读个数")
private Long zfygCount;
/**
* 未读总个数
*/
@Schema(description = "未读总个数")
private Long totalCount;
}

9
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/EnforcementEducationServicesMapper.java

@ -2,6 +2,7 @@ package com.zdxt.enforcementcode.mapper;
import com.zdxt.enforcementcode.domain.bean.EnforcementEducationServices; import com.zdxt.enforcementcode.domain.bean.EnforcementEducationServices;
import com.zdxt.enforcementcode.domain.vo.EnforcementEducationServicesVo; import com.zdxt.enforcementcode.domain.vo.EnforcementEducationServicesVo;
import org.apache.ibatis.annotations.Param;
import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
/** /**
@ -12,4 +13,12 @@ import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
*/ */
public interface EnforcementEducationServicesMapper extends BaseMapperPlus<EnforcementEducationServices, EnforcementEducationServicesVo> { public interface EnforcementEducationServicesMapper extends BaseMapperPlus<EnforcementEducationServices, EnforcementEducationServicesVo> {
/**
* 统计未读普法消息数量
*
* @param companyId 企业ID
* @return 未读普法消息数量
*/
Long countUnreadEducationServices(@Param("companyId") String companyId);
} }

7
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/IEnforcementEducationServicesService.java

@ -65,4 +65,11 @@ public interface IEnforcementEducationServicesService {
* @return 是否删除成功 * @return 是否删除成功
*/ */
Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid); Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid);
/**
* 统计当前登录用户企业的普法未读个数
*
* @return 未读普法消息数量
*/
Long countUnreadEducationServices();
} }

25
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementEducationServicesServiceImpl.java

@ -181,4 +181,29 @@ public class EnforcementEducationServicesServiceImpl implements IEnforcementEduc
} }
return baseMapper.deleteByIds(ids) > 0; return baseMapper.deleteByIds(ids) > 0;
} }
/**
* 统计当前登录用户企业的普法未读个数
*
* @return 未读普法消息数量
*/
@Override
public Long countUnreadEducationServices() {
// 获取当前登录用户的企业ID
String companyId = LoginHelper.getDeptId();
if (StringUtils.isBlank(companyId)) {
log.warn("当前用户未关联企业,无法统计未读普法消息");
return 0L;
}
log.debug("统计企业未读普法消息: companyId={}", companyId);
// 查询未读普法消息数量
Long unreadCount = baseMapper.countUnreadEducationServices(companyId);
log.info("企业 {} 的未读普法消息数量: {}", companyId, unreadCount);
return unreadCount != null ? unreadCount : 0L;
}
} }

17
zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EnforcementEducationServicesMapper.xml

@ -3,4 +3,21 @@
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zdxt.enforcementcode.mapper.EnforcementEducationServicesMapper"> <mapper namespace="com.zdxt.enforcementcode.mapper.EnforcementEducationServicesMapper">
<!-- 统计未读普法消息数量 -->
<select id="countUnreadEducationServices" resultType="java.lang.Long">
SELECT COUNT(1)
FROM enforcement_education_services ees
WHERE ees.is_delete = 0
AND ees.status = 2
AND NOT EXISTS (
SELECT 1
FROM sys_message_view_log smvl
WHERE smvl.source_id = ees.id
AND smvl.company_id = #{companyId}
AND smvl.source_type = 1
AND smvl.is_delete = 0
)
</select>
</mapper> </mapper>

Loading…
Cancel
Save