diff --git a/ServiceSite/facade/src/main/java/com/seasky/projectplan/dto/incomeplan/InComeOtherCmd.java b/ServiceSite/facade/src/main/java/com/seasky/projectplan/dto/incomeplan/InComeOtherCmd.java
index b28fd37fcb7ad92edfbea2e539ae737a3ec8d9f7..323dca21b36f4cbef26f9ae71e0e83b4fd2ad3e6 100644
--- a/ServiceSite/facade/src/main/java/com/seasky/projectplan/dto/incomeplan/InComeOtherCmd.java
+++ b/ServiceSite/facade/src/main/java/com/seasky/projectplan/dto/incomeplan/InComeOtherCmd.java
@@ -23,6 +23,6 @@ import java.math.BigDecimal;
 public class InComeOtherCmd extends BaseDto {
 
     @ApiModelProperty("鏀跺叆瀛愯〃鐨勫叾浠栧搴旀ā鏉挎墍瀛樺唴瀹�")
-    private String subOhterJson;
+    private String subOtherJson;
 
 }
diff --git a/ServiceSite/facade/src/main/java/com/seasky/projectplan/dto/incomeplan/InComePlanOut.java b/ServiceSite/facade/src/main/java/com/seasky/projectplan/dto/incomeplan/InComePlanOut.java
index 3bf66890616e11a9e6a2df972c15d8f92dc36c0e..64b409fdae72e64f19198ef5ed6b1ed1bb91ec63 100644
--- a/ServiceSite/facade/src/main/java/com/seasky/projectplan/dto/incomeplan/InComePlanOut.java
+++ b/ServiceSite/facade/src/main/java/com/seasky/projectplan/dto/incomeplan/InComePlanOut.java
@@ -10,6 +10,7 @@ import lombok.NoArgsConstructor;
 
 import java.io.Serializable;
 import java.math.BigDecimal;
+import java.util.ArrayList;
 import java.util.List;
 
 /**
@@ -93,5 +94,5 @@ public class InComePlanOut extends BaseDto implements Serializable {
     /**
      * 瀛愯〃閾捐〃
      */
-    private List<InComeSubOut> inComeSubList;
+    private List<InComeSubOut> inComeSubList = new ArrayList<InComeSubOut>();
 }
diff --git a/ServiceSite/facade/src/main/java/com/seasky/projectplan/dto/incomeplan/InComeSubOut.java b/ServiceSite/facade/src/main/java/com/seasky/projectplan/dto/incomeplan/InComeSubOut.java
index 05b7e88b49fd33f5a6ff9d95af26203d0de8d819..623ecb86f1ec443fe0f4b4c9aef76762ced64eb2 100644
--- a/ServiceSite/facade/src/main/java/com/seasky/projectplan/dto/incomeplan/InComeSubOut.java
+++ b/ServiceSite/facade/src/main/java/com/seasky/projectplan/dto/incomeplan/InComeSubOut.java
@@ -42,6 +42,6 @@ public class InComeSubOut extends BaseDto implements Serializable {
     /**
      * 鏀跺叆瀛愯〃鐨勫叾浠栧搴旀ā鏉挎墍瀛樺唴瀹�
      */
-    private String subOhterJson;
+    private String subOtherJson;
 
 }
diff --git a/ServiceSite/src/main/java/com/seasky/projectplan/domain/aggregate/inComePlanAgg/InComeSubEntity.java b/ServiceSite/src/main/java/com/seasky/projectplan/domain/aggregate/inComePlanAgg/InComeSubEntity.java
index 75ce0882883f1c981b701da426a2112137c2a932..2fe287c21e58a0e78691aab6d1d53cc35d3b526b 100644
--- a/ServiceSite/src/main/java/com/seasky/projectplan/domain/aggregate/inComePlanAgg/InComeSubEntity.java
+++ b/ServiceSite/src/main/java/com/seasky/projectplan/domain/aggregate/inComePlanAgg/InComeSubEntity.java
@@ -32,7 +32,7 @@ public class InComeSubEntity extends BaseEntity {
     /**
      * 鏀跺叆瀛愯〃鐨勫叾浠栧搴旀ā鏉挎墍瀛樺唴瀹�
      */
-    private String subOhterJson;
+    private String subOtherJson;
 
     /**
      * 鎵╁睍琛ㄧ埗绾D
diff --git a/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/dataobject/po/InComeSubPo.java b/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/dataobject/po/InComeSubPo.java
index 7c6b9c1c8d0c58c25e01ee5eb4c6b7197b69fb83..735d897c0ed95aff13e4e6aeab758788734f63a5 100644
--- a/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/dataobject/po/InComeSubPo.java
+++ b/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/dataobject/po/InComeSubPo.java
@@ -39,6 +39,6 @@ public class InComeSubPo extends BaseDataObject {
     /**
      * 鏀跺叆瀛愯〃鐨勫叾浠栧搴旀ā鏉挎墍瀛樺唴瀹�
      */
-    @TableField("subOhterJson")
-    private String subOhterJson;
+    @TableField("subOtherJson")
+    private String subOtherJson;
 }
diff --git a/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/repository/inComePlan/inComeSub/InComeSubRepositoryImpl.java b/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/repository/inComePlan/inComeSub/InComeSubRepositoryImpl.java
index 015a22446b34ee541b8cde25cbd30eb25edf37b7..79badc934ceedd1f75b4bbbe72cd3bbe92c432c5 100644
--- a/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/repository/inComePlan/inComeSub/InComeSubRepositoryImpl.java
+++ b/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/repository/inComePlan/inComeSub/InComeSubRepositoryImpl.java
@@ -1,5 +1,6 @@
 package com.seasky.projectplan.infrastructure.repository.inComePlan.inComeSub;
 
+import cn.hutool.core.util.ObjectUtil;
 import com.seasky.core.common.Error;
 import com.seasky.core.common.ResponseCode;
 import com.seasky.core.exception.DataAccessException;
@@ -33,15 +34,16 @@ public class InComeSubRepositoryImpl implements InComeSubRepository {
      */
     @Override
     public Integer saveInComeSub(InComePlanAgg inComePlanAgg) {
-
-        List<InComeSubPo> inComeSubPo = inComeSubConvert.aggEntityListToPoList(inComePlanAgg);
-        Map<String,Object> maps =new HashMap<>(1);
-        maps.put("parentid",inComePlanAgg.getEntityParentId());
+        Map<String, Object> maps = new HashMap<>(1);
+        maps.put("parentid", inComePlanAgg.getEntityParentId());
         inComeSubMapper.deleteByMap(maps);
-        for (InComeSubPo po:inComeSubPo) {
-            po.prepareBeforeInsert();
-            if (inComeSubMapper.insert(po) != 1){
-                throw new DataAccessException(new Error(ResponseCode.SERVER_INTERNAL_EXCEPTION, null, "鏀跺叆缂栧埗瀛愯〃鏂板澶辫触", ""));
+        if (!ObjectUtil.isNull(inComePlanAgg.getInComeSubList())) {
+            List<InComeSubPo> inComeSubPo = inComeSubConvert.aggEntityListToPoList(inComePlanAgg);
+            for (InComeSubPo po : inComeSubPo) {
+                po.prepareBeforeInsert();
+                if (inComeSubMapper.insert(po) != 1) {
+                    throw new DataAccessException(new Error(ResponseCode.SERVER_INTERNAL_EXCEPTION, null, "鏀跺叆缂栧埗瀛愯〃鏂板澶辫触", ""));
+                }
             }
         }
         return 1;
@@ -54,9 +56,9 @@ public class InComeSubRepositoryImpl implements InComeSubRepository {
      */
     @Override
     public Integer deleteInComeSub(List<Long> ids) {
-        for (Long po:ids) {
-            Map<String,Object> maps=new HashMap<>(1);
-            maps.put("parentid",po);
+        for (Long po : ids) {
+            Map<String, Object> maps = new HashMap<>(1);
+            maps.put("parentid", po);
             inComeSubMapper.deleteByMap(maps);
         }
         return 1;
diff --git a/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/repository/inComePlan/inComeSub/inComeSubConvert.java b/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/repository/inComePlan/inComeSub/inComeSubConvert.java
index ac79a1c4dd1e5af6f9db9e480d4d8d9394bcd630..13282a2838e02cc3ceadce399f319ea0d0426b84 100644
--- a/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/repository/inComePlan/inComeSub/inComeSubConvert.java
+++ b/ServiceSite/src/main/java/com/seasky/projectplan/infrastructure/repository/inComePlan/inComeSub/inComeSubConvert.java
@@ -1,5 +1,6 @@
 package com.seasky.projectplan.infrastructure.repository.inComePlan.inComeSub;
 
+import cn.hutool.core.util.ObjectUtil;
 import com.seasky.core.ddd.utils.MapperUtils;
 import com.seasky.projectplan.domain.aggregate.inComePlanAgg.InComePlanAgg;
 import com.seasky.projectplan.domain.aggregate.inComePlanAgg.InComeSubEntity;
@@ -19,17 +20,17 @@ import java.util.List;
  */
 public class inComeSubConvert {
 
-    public static List<InComeSubPo> aggEntityListToPoList(InComePlanAgg agg){
+    public static List<InComeSubPo> aggEntityListToPoList(InComePlanAgg agg) {
         JSONObject jsonObj;
-        for (InComeSubEntity en:agg.getInComeSubList()) {
-            jsonObj = JSONObject.parseObject(en.getSubOhterJson());
-            if (jsonObj.containsKey("peoNum")&&jsonObj.containsKey("standard")) {
+        for (InComeSubEntity en : agg.getInComeSubList()) {
+            jsonObj = JSONObject.parseObject(en.getSubOtherJson());
+            if (jsonObj.containsKey("peoNum") && jsonObj.containsKey("standard")) {
                 BigDecimal peoNum = jsonObj.getBigDecimal("peoNum");
                 BigDecimal standard = jsonObj.getBigDecimal("standard");
                 en.setTotal(peoNum.multiply(standard));
             }
         }
-        return MapperUtils.INSTANCE.mapAsList(InComeSubPo.class,agg.getInComeSubList());
+        return MapperUtils.INSTANCE.mapAsList(InComeSubPo.class, agg.getInComeSubList());
     }
 
 }