sgj
2026-01-26 bc427c64d8c9066eda7a817c7c7926954e39abb0
fzzy-igdss-web/src/main/java/com/fzzy/security/EventInfoController.java
@@ -1,20 +1,23 @@
package com.fzzy.security;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.fzzy.common.manager.CommonManager;
import com.fzzy.igds.constant.Constant;
import com.fzzy.igds.constant.RespCodeEnum;
import com.fzzy.igds.constant.WarnType;
import com.fzzy.igds.data.IgdsBaseParam;
import com.fzzy.igds.data.PageResponse;
import com.fzzy.igds.domain.Company;
import com.fzzy.igds.domain.Dept;
import com.fzzy.igds.domain.EventInfo;
import com.fzzy.common.manager.CommonManager;
import com.fzzy.igds.utils.ContextUtil;
import com.fzzy.security.manager.EventInfoManager;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.utils.StringUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.ArrayList;
@@ -27,7 +30,7 @@
@RequestMapping("/security/eventInfo")
public class EventInfoController {
    private static final String prefix = "security/eventInfo";
    private static final String prefix = "security";
    @Resource
    private EventInfoManager eventInfoManager;
@@ -38,27 +41,56 @@
    /**
     * AI事件管理页面
     *
     * @param model
     * @author sgj
     * @date 2025/12/10
     * @param model
     */
    @GetMapping
    public String getEventInfo(
            Model model) {
    public String getEventInfo(@RequestParam(value = "viewType", required = false) String viewType, Model model) {
        //获取当前登录人
        SysUser user = ContextUtil.getLoginUser();
        //获取公司数据
        List<Company> companies = commonManager.listCompanyData();
        String defaultCompany =  "" ;
        if (companies != null && !companies.isEmpty()) {
            defaultCompany = companies.get(0).getId();
        }
        //获取库区数据
        List<Dept> depts = new ArrayList<>() ;
        String defaultDeptId =  "" ;
        if (Constant.USER_TYPE_30.equals(user.getUserType())) {
            depts=commonManager.listDeptData(null);
            defaultDeptId=user.getDeptId() + "";
        }else{
            depts=commonManager.listDeptData(defaultCompany);
            //在首位添加所有选项
            Dept all = new Dept();
            all.setId("");
            all.setKqmc("所有");
            depts.add(0, all);
        }
        IgdsBaseParam param = new IgdsBaseParam();
        param.setPage(1);
        param.setLimit(6);
        param.setKey(defaultCompany);
        param.setDeptId(defaultDeptId);
        Page<EventInfo> events = eventInfoManager.pageData(param);
        model.addAttribute("eventInfoList", events.getRecords());
        model.addAttribute("currentPage", events.getCurrent());
        model.addAttribute("totalItems", events.getTotal());
        model.addAttribute("pageSize", events.getSize());
        if (StringUtils.isEmpty(viewType)) {
            // 1 安防页面  2 监管页面
            viewType = "1";
        }
        //页面展示类型
        model.addAttribute("viewType", viewType);
        //设备数据
        model.addAttribute("cameraList", commonManager.listCameraData());
        //库区数据
        model.addAttribute("deptList", commonManager.listDeptData());
        model.addAttribute("deptList", depts);
        model.addAttribute("defaultDeptId", defaultDeptId);
        //业务类型数据
        List<Map<String, String>> bizTypeList = new ArrayList<>();
        for (WarnType type : WarnType.values()) {
@@ -69,7 +101,8 @@
        }
        model.addAttribute("bizTypeList", bizTypeList);
        //公司数据
        model.addAttribute("companyList", commonManager.listCompanyData());
        model.addAttribute("companyList", companies);
        model.addAttribute("defaultCompany", defaultCompany);
        return prefix + "/eventInfo";
    }