diff --git a/ant-design-vue-jeecg/src/views/system/stocktaking/CycleCountDetailList.vue b/ant-design-vue-jeecg/src/views/system/stocktaking/CycleCountDetailList.vue
index 1d8c25f..4bb22e3 100644
--- a/ant-design-vue-jeecg/src/views/system/stocktaking/CycleCountDetailList.vue
+++ b/ant-design-vue-jeecg/src/views/system/stocktaking/CycleCountDetailList.vue
@@ -77,8 +77,8 @@
           <cycle-count-detail-chi-id-modal ref="adjustmentModal" @ok="modalFormOk" :id="record.id"/>
           <a @click="createMany()"><a-icon/>新增</a>
           <a-divider type="vertical"/>
-          <a v-if="record.enableStatus === 1"  @click="selectPort(record)">生成盘点任务</a>
-          <a-divider v-if="record.enableStatus === 1"  type="vertical"/>
+          <a v-if="record.enableStatus == '1'"  @click="selectPort(record)">生成盘点任务</a>
+          <a-divider v-if="record.enableStatus == '1'"  type="vertical"/>
           <a @click="loadDatas(record.cycleCountHeadId)"><a-icon type="sync"/>刷新</a>
         </template>
 
diff --git a/ant-design-vue-jeecg/src/views/system/stocktaking/subTables/CycleCountDetailChildSubTable.vue b/ant-design-vue-jeecg/src/views/system/stocktaking/subTables/CycleCountDetailChildSubTable.vue
index d20067a..aebe6bb 100644
--- a/ant-design-vue-jeecg/src/views/system/stocktaking/subTables/CycleCountDetailChildSubTable.vue
+++ b/ant-design-vue-jeecg/src/views/system/stocktaking/subTables/CycleCountDetailChildSubTable.vue
@@ -23,7 +23,7 @@
 
     <template slot="action" slot-scope="text, record">
       <adjustment-doc-modal ref="adjustmentModal" @ok="modalFormOk"/>
-      <a v-if="record.childStatus != 1" @click="createMany(record.id)"><a-icon />实盘登记</a>
+      <a v-if="record.childStatus != 1" @click="createMany(record)"><a-icon />实盘登记</a>
     </template>
 
     <template slot="fileSlot" slot-scope="text">
diff --git a/ant-design-vue-jeecg/src/views/system/task/TaskDetailList.vue b/ant-design-vue-jeecg/src/views/system/task/TaskDetailList.vue
index d882bb4..5a603bd 100644
--- a/ant-design-vue-jeecg/src/views/system/task/TaskDetailList.vue
+++ b/ant-design-vue-jeecg/src/views/system/task/TaskDetailList.vue
@@ -80,7 +80,7 @@
 
         <span slot="action" slot-scope="text, record">
           <adjustment-doc-modal ref="adjustmentModal" @ok="modalFormOk" :id="record.id" :taskHeaderId="record.taskHeaderId"/>
-          <a v-if="record.taskType==700" @click="createMany(record)">实盘登记</a>
+          <a v-if="record.taskType==700" @click="createMany(record)">实盘登记<a-divider type="vertical" /></a>
           <a v-has="'taskDetail:edit'" @click="handleEdit(record)">编辑<a-divider type="vertical" /></a>
           <a-popconfirm title="确定删除吗?" @confirm="() => handleDelete(record.id)">
             <a v-has="'taskDetail:delete'">删除</a>
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 7dc8bf5..0991c89 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
@@ -4,9 +4,11 @@ import java.io.Serializable;
 import java.math.BigDecimal;
 import java.util.Collection;
 import java.util.List;
+import java.util.stream.Collectors;
 
 import javax.annotation.Resource;
 
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.exception.JeecgBootException;
 import org.jeecg.modules.wms.config.container.entity.Container;
@@ -17,7 +19,9 @@ import org.jeecg.modules.wms.config.material.entity.Material;
 import org.jeecg.modules.wms.config.material.service.impl.MaterialServiceImpl;
 import org.jeecg.modules.wms.config.parameterConfiguration.service.IParameterConfigurationService;
 import org.jeecg.modules.wms.inventory.inventoryHeader.entity.InventoryDetail;
+import org.jeecg.modules.wms.inventory.inventoryHeader.entity.InventoryHeader;
 import org.jeecg.modules.wms.inventory.inventoryHeader.service.IInventoryDetailService;
+import org.jeecg.modules.wms.inventory.inventoryHeader.service.IInventoryHeaderService;
 import org.jeecg.modules.wms.receipt.receiptContainerHeader.service.IReceiptContainerHeaderService;
 import org.jeecg.modules.wms.shipment.shipmentContainerHeader.service.IShipmentContainerHeaderService;
 import org.jeecg.modules.wms.stocktaking.cycleCountDetail.entity.CycleCountDetail;
@@ -79,6 +83,8 @@ public class CycleCountDetailServiceImpl extends ServiceImpl<CycleCountDetailMap
     private IReceiptContainerHeaderService receiptContainerHeaderService;
     @Resource
     private IShipmentContainerHeaderService shipmentContainerHeaderService;
+    @Resource
+    private IInventoryHeaderService inventoryHeaderService;
 
     @Override
     @Transactional
@@ -160,6 +166,10 @@ public class CycleCountDetailServiceImpl extends ServiceImpl<CycleCountDetailMap
             if (locationByCode.getStatus().equals(QuantityConstant.STATUS_CONTAINER_LOCK)) {
                 return Result.error("当前库位已锁定 请检查数据 库存里面不是锁定 实际上库位里面锁定了");
             }
+            InventoryHeader inventoryHeader = inventoryHeaderService.getById(taskId);
+            if (inventoryHeader == null) {
+                return Result.error("根据库存头ID:" + taskId + "没有找到库存头");
+            }
 
             CycleCountDetail cycleCountDetail = new CycleCountDetail();
             cycleCountDetail.setCycleCountHeadId(headerId);
@@ -170,9 +180,9 @@ public class CycleCountDetailServiceImpl extends ServiceImpl<CycleCountDetailMap
             cycleCountDetail.setInventoryHeaderId(inventoryDetails.get(0).getInventoryHeaderId());
             cycleCountDetail.setLocationCode(inventoryDetails.get(0).getLocationCode());
             cycleCountDetail.setInventorySts(inventoryDetails.get(0).getInventoryStatus());
-            cycleCountDetail.setSystemQty(BigDecimal.ZERO);
-            cycleCountDetail.setCountedQty(BigDecimal.ZERO);
-            cycleCountDetail.setGapQty(BigDecimal.ZERO);
+            cycleCountDetail.setSystemQty(inventoryHeader.getTotalQty());
+//            cycleCountDetail.setCountedQty(BigDecimal.ZERO);
+//            cycleCountDetail.setGapQty(BigDecimal.ZERO);
             cycleCountDetail.setEnableStatus(QuantityConstant.CYCLECOUNT_STATUS_BUILD);
             cycleCountDetailService.save(cycleCountDetail);
             for (InventoryDetail inventoryDetail : inventoryDetails) {
@@ -196,6 +206,24 @@ public class CycleCountDetailServiceImpl extends ServiceImpl<CycleCountDetailMap
                 cycleCountDetailChildServiceImpl.save(cycleCountDetailChild);
             }
         }
+        LambdaQueryWrapper <CycleCountDetail> cycleCountDetailLambdaQueryWrapper = Wrappers.lambdaQuery();
+        cycleCountDetailLambdaQueryWrapper.eq(CycleCountDetail::getCycleCountHeadCode, code);
+        List<CycleCountDetail> cycleCountDetailList = cycleCountDetailService.list(cycleCountDetailLambdaQueryWrapper);
+        if (CollectionUtils.isEmpty(cycleCountDetailList)) {
+            throw new JeecgBootException("没有找到盘点头信息");
+        }
+        BigDecimal countSystemQty = BigDecimal.ZERO;
+        List<BigDecimal> systemQty = cycleCountDetailList.stream().map(i -> i.getSystemQty()).collect(Collectors.toList());
+        for (BigDecimal bigDecimal : systemQty) {
+            countSystemQty = countSystemQty.add(bigDecimal);
+        }
+        CycleCountHeader cycleCountHeader = new CycleCountHeader();
+        cycleCountHeader.setId(cycleCountDetailList.get(0).getCycleCountHeadId());
+        cycleCountHeader.setTotalLocs(cycleCountDetailList.size());
+        cycleCountHeader.setTotalItems(countSystemQty);
+        if (!cycleCountHeaderService.updateById(cycleCountHeader)) {
+            throw new JeecgBootException("修改盘点头数量信息失败");
+        }
         return Result.OK("生成完成", headerId);
     }
 
@@ -330,6 +358,9 @@ public class CycleCountDetailServiceImpl extends ServiceImpl<CycleCountDetailMap
         if (cycleCountDetail.getEnableStatus().equals(QuantityConstant.CYCLECOUNT_STATUS_BUILD)) {
             return Result.error("当前盘点明细是新建状态 不能调整");
         }
+        if (cycleCountDetail.getEnableStatus().equals(QuantityConstant.CYCLECOUNT_STATUS_COMPLETED)) {
+            return Result.error("当前盘点明细是完成状态 不能调整");
+        }
 
         if (cycleCountDetailChild.getCountedQty().compareTo(BigDecimal.ZERO) == 0) {
             return Result.error("别闹");
diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/task/taskHeader/service/ITaskHeaderService.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/task/taskHeader/service/ITaskHeaderService.java
index 51801d2..16d6e93 100644
--- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/task/taskHeader/service/ITaskHeaderService.java
+++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/task/taskHeader/service/ITaskHeaderService.java
@@ -4,6 +4,7 @@ import java.io.Serializable;
 import java.util.Collection;
 import java.util.List;
 
+import javafx.concurrent.Task;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.modules.wms.config.location.entity.Location;
 import org.jeecg.modules.wms.task.taskHeader.entity.QucikReceiptEntity;
@@ -310,6 +311,13 @@ public interface ITaskHeaderService extends IService<TaskHeader> {
     Result cancelShipmentTask(TaskHeader taskHeader);
 
     /**
+     * 修改盘点明细状态
+     * @param  taskHeader
+     * @return
+     */
+    Result updateCycleCountDetailByEnableStatus(TaskHeader taskHeader);
+
+    /**
      * 更新状态
      * @param  status
      * @param  id
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 a3c402c..0a91155 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
@@ -910,6 +910,8 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea
             case QuantityConstant.TASK_TYPE_WHOLESHIPMENT:
             case QuantityConstant.TASK_TYPE_SORTINGSHIPMENT:
                 result = taskHeaderService.cancelShipmentTask(taskHeader);
+            case QuantityConstant.TASK_TYPE_CYCLECOUNT:
+                result = taskHeaderService.updateCycleCountDetailByEnableStatus(taskHeader);
                 break;
         }
         taskHeaderService.cancelLocationAndContainerStatus(taskHeader);
@@ -2772,6 +2774,24 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea
     }
 
     @Override
+    public Result updateCycleCountDetailByEnableStatus(TaskHeader taskHeader) {
+        log.info("开始取消盘点任务");
+        LambdaQueryWrapper<CycleCountDetail> cycleCountDetailLambdaQueryWrapper = Wrappers.lambdaQuery();
+        cycleCountDetailLambdaQueryWrapper.eq(CycleCountDetail::getContainerCode, taskHeader.getContainerCode())
+                .ne(CycleCountDetail::getEnableStatus, QuantityConstant.SHIPMENT_RECEIVE_SUCCESS);
+        CycleCountDetail cycleCountDetail = cycleCountDetailService.getOne(cycleCountDetailLambdaQueryWrapper);
+        if (cycleCountDetail == null) {
+            throw new JeecgBootException("取消盘点任务,没有找到盘点明细");
+        }
+        cycleCountDetail.setEnableStatus(QuantityConstant.CYCLECOUNT_STATUS_BUILD);
+        if (!cycleCountDetailService.updateById(cycleCountDetail)) {
+            throw new JeecgBootException("取消盘点任务,修改盘点明细状态失败");
+        }
+        log.info("完成取消盘点任务");
+        return Result.ok("取消盘点任务成功");
+    }
+
+    @Override
     public boolean updateStatusById(int status, int id) {
         TaskHeader taskHeader = new TaskHeader();
         taskHeader.setId(id);