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.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.WeighbridgeSnap; import com.fzzy.igds.utils.ContextUtil; import com.fzzy.security.manager.WeighbridgeSnapManager; 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.*; import javax.annotation.Resource; import java.util.ArrayList; import java.util.List; @Slf4j @Controller @RequestMapping("/security/weighbridgeSnap") public class WeighbridgeSnapController { private static final String prefix = "security"; @Resource private WeighbridgeSnapManager weighbridgeSnapManager; @Resource private CommonManager commonManager; /** * 获取地磅抓拍页面 * * @param viewType * @param model * @author sgj * @since 2026/02/25 */ @GetMapping public String getWeighbridgeSnap(@RequestParam(value = "viewType", required = false) String viewType, Model model) { //获取当前登录人 SysUser user = ContextUtil.getLoginUser(); //获取公司数据 List companies = commonManager.listCompanyData(); String defaultCompany = ""; if (companies != null && !companies.isEmpty()) { defaultCompany = companies.get(0).getId(); } //获取库区数据 List 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(8); param.setKey(defaultCompany); param.setDeptId(defaultDeptId); Page events = weighbridgeSnapManager.pageData(param); model.addAttribute("weighbridgeSnapList", 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", depts); model.addAttribute("defaultDeptId", defaultDeptId); //公司数据 model.addAttribute("companyList", companies); model.addAttribute("defaultCompany", defaultCompany); return prefix + "/weighbridgeSnap"; } /** * 分页获取数据 * * @param param * @return */ @RequestMapping("/pageData") @ResponseBody public PageResponse> pageData(@RequestBody IgdsBaseParam param) { Page weighbridgeSnapPage = weighbridgeSnapManager.pageData(param); return new PageResponse<>(RespCodeEnum.CODE_0000, weighbridgeSnapPage); } }