| | |
| | | package com.fzzy.igds.service; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
| | | import com.fzzy.igds.constant.RedisConst; |
| | | import com.fzzy.igds.domain.Camera; |
| | | import com.fzzy.igds.repository.SecCameraRepository; |
| | | import com.fzzy.igds.mapper.CameraMapper; |
| | | import com.fzzy.igds.utils.ContextUtil; |
| | | import com.ruoyi.common.core.redis.RedisCache; |
| | | import com.ruoyi.common.utils.StringUtils; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.data.domain.Page; |
| | | import org.springframework.data.domain.Pageable; |
| | | import org.springframework.data.jpa.domain.Specification; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import javax.annotation.Resource; |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | |
| | | public class SecCameraService { |
| | | |
| | | @Resource |
| | | private SecCameraRepository secCameraRepository; |
| | | private CameraMapper cameraMapper; |
| | | @Resource |
| | | private RedisCache redisCache; |
| | | |
| | | /** |
| | | * JPA分页查询数据 |
| | | * |
| | | * @param specification |
| | | * @param pageable |
| | | * @return |
| | | */ |
| | | public Page<Camera> findAll(Specification<Camera> specification, Pageable pageable) { |
| | | return secCameraRepository.findAll(specification, pageable); |
| | | public void listPageCamera(Page<Camera> page, Camera param) { |
| | | QueryWrapper<Camera> queryWrapper = new QueryWrapper<>(); |
| | | |
| | | param.setCompanyId(ContextUtil.getCompanyId()); |
| | | param.setDeptId(ContextUtil.subDeptId(null)); |
| | | queryWrapper.eq("company_id", param.getCompanyId()); |
| | | queryWrapper.eq("dept_id", param.getDeptId()); |
| | | |
| | | if(StringUtils.isNotBlank(param.getName())){ |
| | | queryWrapper.like("name", param.getName()); |
| | | } |
| | | if(StringUtils.isNotBlank(param.getBrand())){ |
| | | queryWrapper.eq("brand", param.getBrand()); |
| | | } |
| | | if(StringUtils.isNotBlank(param.getSpjklx())){ |
| | | queryWrapper.eq("spjklx", param.getSpjklx()); |
| | | } |
| | | if(StringUtils.isNotBlank(param.getSpdwlx())){ |
| | | queryWrapper.eq("spdwlx", param.getSpdwlx()); |
| | | } |
| | | |
| | | cameraMapper.selectPage(page, queryWrapper); |
| | | } |
| | | |
| | | /** |
| | | * JPA - 查询库区下所有监控 |
| | | * 查询库区下所有监控 |
| | | * @return |
| | | */ |
| | | public List<Camera> listCamera() { |
| | | return secCameraRepository.listCamera(ContextUtil.getCompanyId(), ContextUtil.subDeptId(null)); |
| | | public List<Camera> listCamera(String companyId, String deptId) { |
| | | |
| | | QueryWrapper<Camera> queryWrapper = new QueryWrapper<>(); |
| | | |
| | | if(StringUtils.isNotBlank(companyId)){ |
| | | queryWrapper.eq("company_id", companyId); |
| | | } |
| | | if(StringUtils.isNotBlank(deptId)){ |
| | | queryWrapper.eq("dept_id", deptId); |
| | | } |
| | | |
| | | return cameraMapper.selectList(queryWrapper); |
| | | } |
| | | |
| | | /** |
| | | * JPA - 保存数据 |
| | | * 保存数据 |
| | | * @param data |
| | | */ |
| | | public void saveCamera(Camera data) { |
| | |
| | | } |
| | | data.setUpdateBy(ContextUtil.getLoginUserName()); |
| | | data.setUpdateTime(new Date()); |
| | | secCameraRepository.save(data); |
| | | cameraMapper.insert(data); |
| | | } |
| | | |
| | | /** |
| | | * JPA - 删除数据 |
| | | * 删除数据 |
| | | * @param data |
| | | * @return |
| | | */ |
| | | public String delCamera(Camera data) { |
| | | secCameraRepository.delete(data); |
| | | cameraMapper.deleteById(data); |
| | | return null; |
| | | } |
| | | |
| | |
| | | if (StringUtils.isEmpty(companyId)) { |
| | | companyId = ContextUtil.getCompanyId(); |
| | | } |
| | | List<Camera> list = secCameraRepository.listCameraByCompanyId(companyId); |
| | | List<Camera> list = this.listCamera(companyId,null); |
| | | redisCache.setCacheObject(RedisConst.buildKey(companyId, RedisConst.KEY_CAMERA_LIST), list); |
| | | } |
| | | |
| | |
| | | List<Camera> list = redisCache.getCacheObject(key); |
| | | |
| | | if (null == list || list.isEmpty()) { |
| | | list = secCameraRepository.listCameraByCompanyId(companyId); |
| | | list = this.listCamera(companyId,null); |
| | | redisCache.setCacheObject(key, list); |
| | | } |
| | | return list; |
| | |
| | | * @param param |
| | | */ |
| | | public void updatePos(Camera param) { |
| | | secCameraRepository.updatePosById(param.getId(), param.getPosX(), param.getPosY()); |
| | | UpdateWrapper<Camera> updateWrapper = new UpdateWrapper<>(); |
| | | updateWrapper.eq("id", param.getId()).set("pos_x", param.getPosX()).set("pos_y", param.getPosY()); |
| | | cameraMapper.update(null, updateWrapper); |
| | | } |
| | | |
| | | } |