From 47a751cb301d05276ae5d75145d57b2d090fe4e1 Mon Sep 17 00:00:00 2001
From: kongzy <kongzy>
Date: Mon, 01 Jul 2024 10:58:35 +0800
Subject: [PATCH] change
---
src/main/java/com/nanometer/smartlab/service/SysWarehouseContainerServiceImpl.java | 119 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 109 insertions(+), 10 deletions(-)
diff --git a/src/main/java/com/nanometer/smartlab/service/SysWarehouseContainerServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/SysWarehouseContainerServiceImpl.java
index f900c66..dec2a85 100644
--- a/src/main/java/com/nanometer/smartlab/service/SysWarehouseContainerServiceImpl.java
+++ b/src/main/java/com/nanometer/smartlab/service/SysWarehouseContainerServiceImpl.java
@@ -9,6 +9,12 @@
import com.google.common.collect.ImmutableBiMap;
import com.google.common.collect.Maps;
+import com.nanometer.smartlab.dao.SysLaboratoryContainerDao;
+import com.nanometer.smartlab.dao.SysLaboratoryDao;
+import com.nanometer.smartlab.entity.SysLaboratory;
+import com.nanometer.smartlab.entity.SysLaboratoryContainer;
+import com.nanometer.smartlab.entity.SysWarehouse;
+import com.nanometer.smartlab.util.Constants;
import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;
import org.springframework.dao.DataAccessException;
@@ -37,9 +43,17 @@
@Resource(name = "sysWarehouseContainerDao")
SysWarehouseContainerDao sysWarehouseContainerDao;
+ @Resource
+ SysLaboratoryContainerDao sysLaboratoryContainerDao;
+ @Resource
+ SysLaboratoryDao sysLaboratoryDao;
+ @Resource
+ BaseMetaService baseMetaService;
+ @Resource
+ SysWarehouseService sysWarehouseService;
@Transactional(propagation = Propagation.REQUIRED)
- public List<SysWarehouseContainer> getSysWarehouseContainerList(String warehouseType, String warehouseName, String warehouseId, Integer first, Integer pageSize) {
+ public List<SysWarehouseContainer> getSysWarehouseContainerList(String warehouseType, String warehouseName, Long warehouseId, Integer first, Integer pageSize) {
try {
Map<String, Object> params = new HashMap<String, Object>();
if (StringUtils.isNotBlank(warehouseType)) {
@@ -48,7 +62,7 @@
if (StringUtils.isNotBlank(warehouseName)) {
params.put("warehouseName", "%" + warehouseName + "%");
}
- if (StringUtils.isNotBlank(warehouseId)) {
+ if (warehouseId!=null) {
params.put("warehouseId", warehouseId);
}
params.put("first", first);
@@ -61,7 +75,7 @@
}
@Transactional(propagation = Propagation.REQUIRED)
- public List<SysWarehouseContainer> getSysWarehouseContainerList(String warehouseId){
+ public List<SysWarehouseContainer> getSysWarehouseContainerList(Long warehouseId){
return getSysWarehouseContainerList(null,null,warehouseId,null,null);
}
@@ -83,7 +97,7 @@
}
@Transactional(propagation = Propagation.REQUIRED)
- public SysWarehouseContainer getSysWarehouseContainer(String id) {
+ public SysWarehouseContainer getSysWarehouseContainer(Long id) {
try {
return this.sysWarehouseContainerDao.getSysWarehouseContainer(id);
} catch (DataAccessException e) {
@@ -95,9 +109,9 @@
@Transactional(propagation = Propagation.REQUIRED)
public SysWarehouseContainer insertSysWarehouseContainer(SysWarehouseContainer sysWarehouseContainer) {
try {
- if (sysWarehouseContainer.getId() == null) {
- sysWarehouseContainer.setId(IDUtils.uuid());
- }
+// if (sysWarehouseContainer.getId() == null) {
+// sysWarehouseContainer.setId(IDUtils.uuid());
+// }
this.sysWarehouseContainerDao.insertSysWarehouseContainer(sysWarehouseContainer);
return sysWarehouseContainer;
} catch (DuplicateKeyException ex) {
@@ -140,7 +154,7 @@
return false;
}
- List<String> ids = new ArrayList<String>();
+ List<Long> ids = new ArrayList<Long>();
for (SysWarehouseContainer sysWarehouseContainer : sysWarehouseContainerList) {
ids.add(sysWarehouseContainer.getId());
}
@@ -159,9 +173,9 @@
throw new BusinessException(ExceptionEnumCode.DB_ERR, MessageUtil.getMessageByCode(ExceptionEnumCode.DB_ERR.getCode()), ex);
}
}
-
+
@Transactional(propagation = Propagation.REQUIRED)
- public boolean isSysWarehouseContainerExist(String containerCode, String editId) {
+ public boolean isSysWarehouseContainerExist(String containerCode, Long editId) {
try {
Map<String, Object> params = new HashMap<String, Object>();
params.put("containerCode", containerCode);
@@ -194,5 +208,90 @@
}
}
+ @Override
+ @Transactional
+ public void insertSysWarehouseContainer2(SysWarehouseContainer sysWarehouseContainer) {
+ //0.新建自己
+ this.insertSysWarehouseContainer(sysWarehouseContainer);
+ SysWarehouse sysWarehouse = sysWarehouseService.getSysWarehouse(sysWarehouseContainer.getWarehouseId());
+ //1.新建实验室
+ SysLaboratory sl = new SysLaboratory();
+
+ //sl.setId(IDUtils.uuid());
+ sl.setType(baseMetaService.getBaseMetaList(Constants.BASE_META_GROUP_LABORATORY_TYPE).get(0).getId());
+ //判断是否已经存在该名称实验室
+ SysLaboratory sysLaboratory = sysLaboratoryDao.getSysLaboratoryByName(sysWarehouse.getName());
+ if (sysLaboratory == null) {
+ //新建实验室
+ sl.setName(sysWarehouse.getName());
+ sl.setInfoCode(sysWarehouse.getInfoCode());
+ sl.setBarCode(sysWarehouse.getBarCode());
+ sl.setLocation1(sysWarehouse.getLocation1());
+ sl.setLocation2(sysWarehouse.getLocation2());
+ sl.setDepartment(sysWarehouse.getDepartment());
+ sysLaboratoryDao.insertSysLaboratory(sl);
+ }else{
+ sl.setId(sysLaboratory.getId());
+ }
+
+ //新建临时存储库
+ Map<String,Object> params = new HashMap<>();
+ params.put("containerCode", sysWarehouseContainer.getContainerCode());
+ int count = sysLaboratoryContainerDao.getSysLaboratoryContainerTotalCount(params);
+ //判断是否已经存在该条码柜子
+ if (count < 1) {
+ SysLaboratoryContainer slc = new SysLaboratoryContainer();
+ // slc.setId(IDUtils.uuid());
+ // (#{id}, #{laboratoryId}, #{type}, #{containerCode}, #{infoCode}, #{structure},
+ // #{name}, 1, #{characterLeft}, #{characterRight}, now(), now(), #{controllerCode},#{project})
+ slc.setLaboratoryId(sl.getId());
+ slc.setType(sysWarehouseContainer.getType());
+ slc.setContainerCode(sysWarehouseContainer.getContainerCode());
+ slc.setInfoCode(sysWarehouseContainer.getInfoCode());
+ slc.setStructure(sysWarehouseContainer.getStructure());
+ slc.setName(sysWarehouseContainer.getName());
+ slc.setCharacterLeft(sysWarehouseContainer.getCharacterLeft());
+ slc.setCharacterRight(sysWarehouseContainer.getCharacterRight());
+ slc.setControllerCode(sysWarehouseContainer.getControllerCode());
+ sysLaboratoryContainerDao.insertSysLaboratoryContainer(slc);
+ }
+
+ }
+
+ @Override
+ @Transactional
+ public void updateSysWarehouseContainer2(SysWarehouseContainer sysWarehouseContainer) {
+ //1.更新自己
+ this.updateSysWarehouseContainer(sysWarehouseContainer);
+ //2.更新实验室临时货柜 by ContainerCode
+ SysLaboratoryContainer sysLaboratoryContainer = sysLaboratoryContainerDao.getSysLaboratoryContainerByContainerCode(sysWarehouseContainer.getContainerCode());
+ sysLaboratoryContainer.setName(sysWarehouseContainer.getName());
+ sysLaboratoryContainer.setInfoCode(sysWarehouseContainer.getInfoCode());
+ sysLaboratoryContainer.setControllerCode(sysWarehouseContainer.getControllerCode());
+ sysLaboratoryContainer.setStructure(sysWarehouseContainer.getStructure());
+ sysLaboratoryContainer.setCharacterRight(sysWarehouseContainer.getCharacterRight());
+ sysLaboratoryContainer.setCharacterLeft(sysWarehouseContainer.getCharacterLeft());
+ sysLaboratoryContainerDao.updateSysLaboratoryContainer(sysLaboratoryContainer);
+
+ }
+
+ @Override
+ @Transactional
+ public void deleteSysWarehouseContainer2(List<SysWarehouseContainer> selectedList) {
+ //1.删除自己
+ this.deleteSysWarehouseContainer(selectedList);
+ List<Long> ids = new ArrayList<>();
+ for (SysWarehouseContainer swc : selectedList) {
+ SysLaboratoryContainer slc = sysLaboratoryContainerDao.getSysLaboratoryContainerByContainerCode(swc.getContainerCode());
+ if (slc != null) {
+ ids.add(slc.getId());
+ }
+ }
+ //2.删除实验室临时存储柜
+ if (ids.size() > 0){
+ sysLaboratoryContainerDao.deleteSysLaboratoryContainers(ids);
+ }
+ }
+
}
--
Gitblit v1.9.2