From 1eddf64a7104dcd06065e8ac309eebc42c24fb05 Mon Sep 17 00:00:00 2001
From: sgj <1442489573@qq.com>
Date: 星期五, 27 三月 2026 14:29:56 +0800
Subject: [PATCH] 出入库记录导入,判重兜底校验纠正
---
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SecCameraService.java | 120 ++++++++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 93 insertions(+), 27 deletions(-)
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SecCameraService.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SecCameraService.java
index fd95374..9ef68de 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SecCameraService.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/SecCameraService.java
@@ -1,17 +1,17 @@
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.fzzy.igds.utils.DateUtil;
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;
@@ -27,31 +27,78 @@
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());
+ }
+ queryWrapper.orderByAsc("order_num");
+ 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 deptId
+ * @param start
+ * @param end
+ * @return
+ */
+ public int getUpdateCount(String deptId, Date start, Date end) {
+
+ QueryWrapper<Camera> queryWrapper = new QueryWrapper<>();
+
+ if(StringUtils.isNotBlank(deptId)){
+ queryWrapper.eq("dept_id", deptId);
+ }
+ if (null != start) {
+ queryWrapper.ge("update_time", start);
+ }
+ if (null != end) {
+ queryWrapper.le("update_time", end);
+ }
+
+ return cameraMapper.selectCount(queryWrapper);
+ }
+
+ /**
+ * 淇濆瓨鏁版嵁
* @param data
*/
public void saveCamera(Camera data) {
@@ -64,23 +111,40 @@
if (data.getChanNum() == 0) {
data.setChanNum(1);
}
+ data.setUpdateBy(ContextUtil.getLoginUserName());
+ data.setUpdateTime(new Date());
if(StringUtils.isEmpty(data.getId())){
data.setId(ContextUtil.generateId());
data.setCreateBy(ContextUtil.getLoginUserName());
data.setCreateTime(new Date());
+ cameraMapper.insert(data);
+ }else {
+ cameraMapper.updateById(data);
}
- data.setUpdateBy(ContextUtil.getLoginUserName());
- data.setUpdateTime(new Date());
- secCameraRepository.save(data);
}
/**
- * JPA - 鍒犻櫎鏁版嵁
+ * 杩滅▼鎷夊彇鐩戞帶淇℃伅鍚庢洿鏂�
+ * @param data
+ */
+ public void pullUpdateCamera(Camera data) {
+ data.setUpdateBy(ContextUtil.getLoginUserName());
+ data.setUpdateTime(new Date());
+ int i = cameraMapper.updateById(data);
+ if(i == 0){
+ data.setCreateBy(ContextUtil.getLoginUserName());
+ data.setCreateTime(new Date());
+ cameraMapper.insert(data);
+ }
+ }
+
+ /**
+ * 鍒犻櫎鏁版嵁
* @param data
* @return
*/
public String delCamera(Camera data) {
- secCameraRepository.delete(data);
+ cameraMapper.deleteById(data);
return null;
}
@@ -92,7 +156,7 @@
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);
}
@@ -109,7 +173,7 @@
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;
@@ -171,7 +235,9 @@
* @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);
}
}
--
Gitblit v1.9.3