diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/stocktaking/cycleCountDetail/service/impl/CycleCountDetailServiceImpl.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/stocktaking/cycleCountDetail/service/impl/CycleCountDetailServiceImpl.java
index 3b5378b..a6f96fd 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/stocktaking/cycleCountDetail/service/impl/CycleCountDetailServiceImpl.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/stocktaking/cycleCountDetail/service/impl/CycleCountDetailServiceImpl.java
@@ -367,7 +367,7 @@ public class CycleCountDetailServiceImpl extends ServiceImpl<CycleCountDetailMap
 
 		cycleCountDetailChild.setChildStatus(QuantityConstant.CYCLECOUNT_STATUS_REGISTERED);
 		cycleCountDetailChild.setSystemQty(BigDecimal.ZERO);
-		cycleCountDetailChild.setGapQty(BigDecimal.ZERO.subtract(countedQty));
+		cycleCountDetailChild.setGapQty(countedQty);
 		cycleCountDetailChild.setCountedQty(countedQty);
 		cycleCountDetailChildServiceImpl.save(cycleCountDetailChild);
 
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/task/taskHeader/service/impl/TaskHeaderServiceImpl.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/task/taskHeader/service/impl/TaskHeaderServiceImpl.java
index cbd9ef9..4258e4c 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/task/taskHeader/service/impl/TaskHeaderServiceImpl.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/task/taskHeader/service/impl/TaskHeaderServiceImpl.java
@@ -1565,18 +1565,41 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea
         {
             if (!child.getChildStatus().equals(QuantityConstant.CYCLECOUNT_STATUS_REGISTERED))
             {
-                throw new ServiceException("当前任务里面还有没有进行登记的数据,不能完成让我");
+                throw new ServiceException("当前任务里面还有没有进行登记的数据,不能完成任务");
             }
-            InventoryDetail inventoryDetail = inventoryDetailService.getById(child.getInventoryDetaiId());
-            if (inventoryDetail==null)
+
+
+            if (child.getInventoryDetaiId()!=null)
             {
-                return Result.error("盘点还没完成 库存明细单据就不存在了 可能出现了问题或者所容器没成功");
+                InventoryDetail inventoryDetail = inventoryDetailService.getById(child.getInventoryDetaiId());
+                if (inventoryDetail==null)
+                {
+                    throw new ServiceException("盘点还没完成 库存明细单据就不存在了 可能出现了问题或者所容器没成功");
+                }
+                inventoryHeader.setTotalQty(inventoryHeader.getTotalQty().add(child.getGapQty()));
+                inventoryDetail.setQty(child.getCountedQty());
+                inventoryDetailService.updateById(inventoryDetail);
+            }else
+            {
+                InventoryDetail inventoryDetail=new InventoryDetail();
+                inventoryDetail.setInventoryHeaderId(inventoryHeader.getId());
+                inventoryDetail.setWarehouseCode(inventoryHeader.getWarehouseCode());
+                inventoryDetail.setCompanyCode(inventoryHeader.getCompanyCode());
+                inventoryDetail.setZoneCode(inventoryHeader.getZoneCode());
+                inventoryDetail.setContainerCode(inventoryHeader.getContainerCode());
+                inventoryDetail.setLocationCode(inventoryHeader.getLocationCode());
+                inventoryDetail.setMaterialCode(child.getMaterialCode());
+                inventoryDetail.setMaterialName(child.getMaterialName());
+                inventoryDetail.setMaterialSpec(child.getMaterialSpec());
+                inventoryDetail.setMaterialUnit(child.getMaterialUnit());
+                inventoryDetail.setQty(child.getCountedQty());
+                inventoryDetail.setTaskQty(BigDecimal.ZERO);
+                inventoryDetail.setInventoryStatus(child.getInventoryStatus());
+                inventoryDetail.setBatch(child.getBatch());
+                inventoryDetailService.save(inventoryDetail);
+                child.setInventoryDetaiId(inventoryDetail.getId());
             }
 
-            inventoryHeader.setTotalQty(inventoryHeader.getTotalQty().add(child.getGapQty()));
-
-            inventoryDetail.setQty(child.getCountedQty());
-            inventoryDetailService.updateById(inventoryDetail);
 
             child.setChildStatus(QuantityConstant.CYCLECOUNT_STATUS_COMPLETED);
             if (child.getGapQty().compareTo(BigDecimal.ZERO) == 1)