sgj
2026-01-20 ae7c4266892b1017ac5cb8a1c937c78fc9a7a6cd
ai事件,智能抓拍,根据登录用户获取公司和库区搜索数据
已修改7个文件
94 ■■■■ 文件已修改
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/CoreCompanyService.java 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SuperInventoryReportService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-web/src/main/java/com/fzzy/common/manager/CommonManager.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-web/src/main/java/com/fzzy/security/EventInfoController.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-web/src/main/java/com/fzzy/security/SnapRecordController.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-web/src/main/resources/templates/security/eventInfo.html 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-web/src/main/resources/templates/security/snapRecord.html 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/CoreCompanyService.java
@@ -11,6 +11,7 @@
import com.ruoyi.common.utils.StringUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -44,8 +45,12 @@
        }
        if (Constant.USER_TYPE_30.equals(user.getUserType())) {
            //库区用户
            return this.listCompany(user.getDeptId()+"",null,null);
            List<Company> companies = new ArrayList<>();
            if (user.getDeptId() != null && StringUtils.isNotBlank(user.getDeptId().toString())) {
                String substring = user.getDeptId().toString().substring(0, user.getDeptId().toString().length() - 3);
                companies = this.listCompany(substring, null, null);
            }
            return companies;
        }
        return this.listCompany(null,user.getCompanyId(),null);
    }
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SuperInventoryReportService.java
@@ -286,6 +286,8 @@
        if (StringUtils.isNotBlank(param.getDeptId())) {
            inoutRecordQueryWrapper.likeRight("dept_id", param.getDeptId());
        }
        inoutRecordQueryWrapper.likeRight("progress", Constant.PROGRESS_RECORD); //已完成的单据
        inoutRecordQueryWrapper.ne("record_status", Constant.RECORD_STATUS_DEL); //不是删除的单子,即正常的单子
        inoutRecordQueryWrapper.ge("create_time", param.getStart());
        inoutRecordQueryWrapper.le("create_time", param.getEnd());
        inoutRecordQueryWrapper.orderByAsc("create_time");
fzzy-igdss-web/src/main/java/com/fzzy/common/manager/CommonManager.java
@@ -215,8 +215,7 @@
     * @date 2025/12/17
     */
    public List<Company> listCompanyData() {
        SysUser user = ContextUtil.getLoginUser();
        return coreCompanyService.listCompany(null, null, user.getDeptId() + "");
        return coreCompanyService.getCompanyByUserType();
    }
fzzy-igdss-web/src/main/java/com/fzzy/security/EventInfoController.java
@@ -2,13 +2,17 @@
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.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;
@@ -43,15 +47,33 @@
     */
    @GetMapping
    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());
@@ -66,7 +88,9 @@
        //设备数据
        model.addAttribute("cameraList", commonManager.listCameraData());
        //库区数据
        model.addAttribute("deptList", commonManager.listDeptData(defaultCompany));
        model.addAttribute("deptList", depts);
        model.addAttribute("defaultDeptId", defaultDeptId);
        //业务类型数据
        List<Map<String, String>> bizTypeList = new ArrayList<>();
        for (WarnType type : WarnType.values()) {
@@ -78,6 +102,7 @@
        model.addAttribute("bizTypeList", bizTypeList);
        //公司数据
        model.addAttribute("companyList", companies);
        model.addAttribute("defaultCompany", defaultCompany);
        return prefix + "/eventInfo";
    }
fzzy-igdss-web/src/main/java/com/fzzy/security/SnapRecordController.java
@@ -2,12 +2,16 @@
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.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.SnapRecord;
import com.fzzy.igds.utils.ContextUtil;
import com.fzzy.security.manager.SnapRecordManager;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.utils.StringUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Controller;
@@ -15,6 +19,7 @@
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
@@ -36,15 +41,32 @@
     */
    @GetMapping
    public String getSnapRecord(@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<SnapRecord> images = snapRecordManager.pageData(param);
        model.addAttribute("snapRecordList", images.getRecords());
        model.addAttribute("currentPage", images.getCurrent());
@@ -59,7 +81,8 @@
        //设备数据
        model.addAttribute("cameraList", commonManager.listCameraData());
        //库区数据
        model.addAttribute("deptList", commonManager.listDeptData(defaultCompany));
        model.addAttribute("deptList", depts);
        model.addAttribute("defaultDeptId", defaultDeptId);
        //公司数据
        model.addAttribute("companyList", companies);
        //默认查询公司数据
fzzy-igdss-web/src/main/resources/templates/security/eventInfo.html
@@ -8,10 +8,10 @@
    <th:block th:include="include :: header('AI事件管理')"/>
    <link rel="stylesheet" type="text/css" th:href="@{/ajax/libs/layui/css/layui.css}"/>
    <link rel="stylesheet" th:href="@{/security/eventInfo/eventInfo-style.css}">
    <th:block th:include="include :: select2-css" />
    <th:block th:include="include :: select2-css"/>
    <style>
        .select-list .select2-container--bootstrap {
            width: 280px!important;
            width: 280px !important;
            display: inline-block;
        }
    </style>
@@ -25,7 +25,7 @@
                <div class="select-list">
                    <ul>
                        <li>
                            收储公司:<select  class="form-control"  name="key">
                            收储公司:<select class="form-control" name="key">
                            <option th:each="company : ${companyList}" th:value="${company.id}"
                                    th:text="${company.dwmc}"
                                    th:selected="${company.id == defaultCompany}">
@@ -33,21 +33,23 @@
                        </select>
                        </li>
                        <li>
                            所选库区:<select class="form-control"  name="deptId">
                            <option value="">所有</option>
                            <option th:each="dept : ${deptList}" th:value="${dept.id}" th:text="${dept.kqmc}">
                            所选库区:<select class="form-control" name="deptId" >
                            <option th:each="dept : ${deptList}" th:value="${dept.id}" th:text="${dept.kqmc}"
                                    th:selected="${dept.id == defaultDeptId}">
                            </option>
                        </select>
                        </li>
                        <li th:if="${viewType == '1'}" style="display: flex">
                            <label>事件名称:</label>
                            <input class="form-control"  type="text" name="name" placeholder="请输入事件名称">
                            <input class="form-control" type="text" name="name" placeholder="请输入事件名称">
                        </li>
                        <li class="select-time">
                            <label style="width: 100px">事件时间: </label>
                            <input type="text" class="time-input" style="width: 140px;" id="start" placeholder="开始时间" name="start"/>
                            <input type="text" class="time-input" style="width: 140px;" id="start"
                                   placeholder="开始时间" name="start"/>
                            <span>-</span>
                            <input type="text" class="time-input" style="width: 140px;" id="end" placeholder="结束时间" name="end"/>
                            <input type="text" class="time-input" style="width: 140px;" id="end" placeholder="结束时间"
                                   name="end"/>
                        </li>
                        <li>
                            <a class="btn btn-primary btn-rounded btn-sm" onclick="searchRecord()"><i
@@ -141,7 +143,7 @@
</div>
<th:block th:include="include :: footer"/>
<script th:src="@{/ajax/libs/layui/layui.js}"></script>
<th:block th:include="include :: select2-js" />
<th:block th:include="include :: select2-js"/>
<script th:src="@{/security/eventInfo/eventInfo.js}"></script>
<script th:inline="javascript">
    var cameraList = [[${cameraList}]];
fzzy-igdss-web/src/main/resources/templates/security/snapRecord.html
@@ -11,7 +11,7 @@
    <th:block th:include="include :: select2-css"/>
    <style>
        .select-list .select2-container--bootstrap {
            width: 280px!important;
            width: 280px !important;
            display: inline-block;
        }
    </style>
@@ -34,8 +34,8 @@
                        </li>
                        <li>
                            所选库区:<select class="form-control" name="deptId">
                            <option value="">所有</option>
                            <option th:each="dept : ${deptList}" th:value="${dept.id}" th:text="${dept.kqmc}">
                            <option th:each="dept : ${deptList}" th:value="${dept.id}" th:text="${dept.kqmc}"
                                    th:selected="${dept.id == defaultDeptId}">
                            </option>
                        </select>
                        </li>