diff --git a/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/entity/InventoryEntity.java b/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/entity/InventoryEntity.java
index a431f0e0..0605a953 100644
--- a/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/entity/InventoryEntity.java
+++ b/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/entity/InventoryEntity.java
@@ -15,6 +15,9 @@ public class InventoryEntity extends BaseEntity {
//存货自由项
private InventoryExtEntity invExtEntity;
+ //存货副表
+ private InventorySubEntity invSubEntity;
+
/** 无备注 */
private String cInvCode;
/** 无备注 */
@@ -2590,4 +2593,12 @@ public class InventoryEntity extends BaseEntity {
public void setiOldpartMngRule(Integer iOldpartMngRule) {
this.iOldpartMngRule = iOldpartMngRule;
}
+
+ public InventorySubEntity getInvSubEntity() {
+ return invSubEntity;
+ }
+
+ public void setInvSubEntity(InventorySubEntity invSubEntity) {
+ this.invSubEntity = invSubEntity;
+ }
}
diff --git a/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/entity/InventoryExtEntity.xml b/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/entity/InventoryExtEntity.xml
index dc2b505e..c1cf1bff 100644
--- a/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/entity/InventoryExtEntity.xml
+++ b/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/entity/InventoryExtEntity.xml
@@ -1,7 +1,7 @@
-
+
@@ -35,7 +35,7 @@
-
diff --git a/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/service/IInventorySubService.java b/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/service/IInventorySubService.java
index 319fc7b0..d61cb920 100644
--- a/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/service/IInventorySubService.java
+++ b/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/service/IInventorySubService.java
@@ -9,4 +9,13 @@ import com.hzya.frame.u8.base.inventory.entity.InventorySubEntity;
* @Date 2025/3/13 16:40
**/
public interface IInventorySubService extends IBaseService {
+
+ /**
+ * 根据存货编码查存货子表
+ * @param entity
+ * @return
+ */
+ InventorySubEntity getInvSub(InventorySubEntity entity)throws Exception;
+
+ void saveOrUpdateInvSub(InventorySubEntity entity)throws Exception;
}
diff --git a/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/service/impl/InventoryExtServiceImpl.java b/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/service/impl/InventoryExtServiceImpl.java
index 6586871f..ecd98f4f 100644
--- a/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/service/impl/InventoryExtServiceImpl.java
+++ b/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/service/impl/InventoryExtServiceImpl.java
@@ -40,7 +40,9 @@ public class InventoryExtServiceImpl extends BaseService query = inventoryextDao.query(entity);
+ InventoryExtEntity extEntity = new InventoryExtEntity();
+ extEntity.setCInvCode(entity.getCInvCode());
+ List query = inventoryextDao.query(extEntity);
if (CollectionUtils.isNotEmpty(query)){
if (query.size() > 1){
throw new BaseSystemException("根据存货编码"+entity.getcInvCode()+"查询到多条扩展自定义项数据,请检查数据准确性");
diff --git a/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/service/impl/InventoryService.java b/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/service/impl/InventoryService.java
index ff7e9b70..c920d655 100644
--- a/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/service/impl/InventoryService.java
+++ b/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/service/impl/InventoryService.java
@@ -77,23 +77,8 @@ public class InventoryService extends BaseService implem
checkInventory("save",entity);
//保存存货信息
inventoryDao.save(entity);
- //保存子表数据
- InventorySubEntity subEntity = new InventorySubEntity();
- subEntity.setDataSourceCode(entity.getDataSourceCode());
- subEntity.setcInvSubCode(entity.getcInvCode());
- subEntity.setAcc_name(entity.getAcc_name());
- //检查子表有没有保存过
- List subEntityList = subService.query(subEntity);
- subEntity.setbInvKeyPart("0");//是否关键物料 1是0否
- subEntity.setAcc_name(entity.getAcc_name());
- subEntity.setPlanCheckDay("0");//计划检验天数
- subEntity.setdInvCreateDatetime(DateUtil.now());//建档日期
- subEntity.setiDrawType("0");//领料方式 0是直接领用,1是申请领用
- if (CollectionUtils.isEmpty(subEntityList)){
- subService.save(subEntity);
- }else {
- subService.update(subEntity);
- }
+ //保存存货副表
+ subService.saveOrUpdateInvSub(entity.getInvSubEntity());
//保存扩展自由项
inventoryExtService.saveOrUpdateInv(entity.getInvExtEntity());
//保存自定义表
@@ -151,6 +136,10 @@ public class InventoryService extends BaseService implem
public void updateInventory(InventoryEntity entity) throws Exception {
checkInventory("update",entity);
inventoryDao.update(entity);
+ //更新存货自由项
+ inventoryExtService.saveOrUpdateInv(entity.getInvExtEntity());
+ //更新存货子表
+ subService.saveOrUpdateInvSub(entity.getInvSubEntity());
}
/**
@@ -163,6 +152,8 @@ public class InventoryService extends BaseService implem
Assert.notEmpty(entity.getcInvCode(),()-> new BaseSystemException("存货编码不能为空"));
Assert.notEmpty(entity.getDataSourceCode(),()-> new BaseSystemException("数据源编码不能为空"));
Assert.notEmpty(entity.getAcc_name(),()-> new BaseSystemException("账套号不能为空"));
+ Assert.notNull(entity.getInvExtEntity(),()-> new BaseSystemException("扩展自定义项不能为空"));
+ Assert.notNull(entity.getInvSubEntity(),()-> new BaseSystemException("存货子表不能为空"));
switch (type) {
case "save":
break;
diff --git a/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/service/impl/InventorySubServiceImpl.java b/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/service/impl/InventorySubServiceImpl.java
index 8696ccf2..5553df53 100644
--- a/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/service/impl/InventorySubServiceImpl.java
+++ b/fw-u8/src/main/java/com/hzya/frame/u8/base/inventory/service/impl/InventorySubServiceImpl.java
@@ -1,12 +1,18 @@
package com.hzya.frame.u8.base.inventory.service.impl;
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.dynamic.datasource.annotation.DS;
import com.hzya.frame.basedao.service.impl.BaseService;
import com.hzya.frame.u8.base.inventory.dao.IInventorySubDao;
import com.hzya.frame.u8.base.inventory.entity.InventorySubEntity;
import com.hzya.frame.u8.base.inventory.service.IInventorySubService;
+import com.hzya.frame.web.exception.BaseSystemException;
+import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import java.util.List;
+
/**
* @Description
* @Author xiangerlin
@@ -22,4 +28,38 @@ public class InventorySubServiceImpl extends BaseService query = inventorySubDao.query(subEntity);
+ if (CollectionUtils.isNotEmpty(query)){
+ if (query.size() > 1){
+ throw new BaseSystemException("根据存货编码"+entity.getcInvSubCode()+"查询到多条副表数据,请检查数据准确性");
+ }
+ return query.get(0);
+ }
+ }
+ return null;
+ }
+
+ @DS("#entity.dataSourceCode")
+ @Override
+ public void saveOrUpdateInvSub(InventorySubEntity entity) throws Exception {
+ InventorySubEntity invSub = getInvSub(entity);
+ if (null != invSub){
+ inventorySubDao.update(entity);
+ }else {
+ inventorySubDao.save(entity);
+ }
+ }
}