浏览代码

直播数据报表 导入功能必填项校验

zhaoxian 3 年之前
父节点
当前提交
0935c14630

+ 9 - 0
jeecg-boot-module-system/src/main/java/cn/com/ctop/kuaishou/modules/live/enums/AdEnum.java

@@ -44,6 +44,15 @@ public enum AdEnum {
         return "";
     }
 
+    public static String getNameByCode(String code) {
+        for (AdEnum material : AdEnum.values()) {
+            if (material.getCode().equals(code)) {
+                return material.getName();
+            }
+        }
+        return "";
+    }
+
     public String getName() {
         return name;
     }

+ 8 - 1
jeecg-boot-module-system/src/main/java/cn/com/ctop/kuaishou/modules/live/enums/MaterialEnum.java

@@ -51,7 +51,14 @@ public enum MaterialEnum {
         }
         return "";
     }
-
+    public static String getNameByCode(String code) {
+        for (MaterialEnum material : MaterialEnum.values()) {
+            if (material.getCode().equals(code)) {
+                return material.getName();
+            }
+        }
+        return "";
+    }
     public String getName() {
         return name;
     }

+ 12 - 0
jeecg-boot-module-system/src/main/java/cn/com/ctop/kuaishou/modules/live/enums/ProvinceEnum.java

@@ -8,6 +8,10 @@ import java.util.Map;
  * 用于锁定EXCEL顺序不同时的字段与数据的对应关系
  */
 public enum ProvinceEnum {
+    PARAMETER001("province", "省份"),
+    PARAMETER002("price", "设备价格"),
+    PARAMETER003("age", "年龄分段"),
+    PARAMETER004("gender", "性别"),
     PARAMETER2("charge", "花费"),
     PARAMETER3("shows", "曝光数"),
     PARAMETER4("photoShow", "封面曝光数"),
@@ -42,6 +46,14 @@ public enum ProvinceEnum {
         }
         return "";
     }
+     public static String getNameByCode(String code) {
+        for (ProvinceEnum material : ProvinceEnum.values()) {
+            if (material.getCode().equals(code)) {
+                return material.getName();
+            }
+        }
+        return "";
+    }
 
     public String getName() {
         return name;

+ 8 - 1
jeecg-boot-module-system/src/main/java/cn/com/ctop/kuaishou/modules/live/enums/TouchEnum.java

@@ -38,7 +38,14 @@ public enum TouchEnum {
         }
         return "";
     }
-
+    public static String getNameByCode(String code) {
+        for (TouchEnum material : TouchEnum.values()) {
+            if (material.getCode().equals(code)) {
+                return material.getName();
+            }
+        }
+        return "";
+    }
     public String getName() {
         return name;
     }

+ 1 - 10
jeecg-boot-module-system/src/main/java/cn/com/ctop/kuaishou/modules/live/enums/liveDataUtil.java

@@ -81,19 +81,10 @@ public class liveDataUtil {
     }
 
     // 省份
-    public static JSONObject getCsvProvinceTitle(List<String> titles, String type) {
+    public static JSONObject getCsvProvinceTitle(List<String> titles) {
         JSONObject obj = new JSONObject();
         String sign = "";
         Map<String, String> map = ProvinceEnum.getMap();
-        if ("province".equals(type)) {
-            map.put("省份", type);
-        } else if ("price".equals(type)) {
-            map.put("设备价格", type);
-        } else if ("age".equals(type)) {
-            map.put("年龄分段", type);
-        } else if ("gender".equals(type)) {
-            map.put("性别", type);
-        }
         for (int i = 0; i < titles.size(); i++) {
             String code = map.get(titles.get(i));
             if (Check.isNull(code)) {

+ 15 - 15
jeecg-boot-module-system/src/main/java/cn/com/ctop/kuaishou/modules/live/service/impl/LiveDataAdServiceImpl.java

@@ -3,6 +3,8 @@ package cn.com.ctop.kuaishou.modules.live.service.impl;
 import cn.com.ctop.common.module.utils.Check;
 import cn.com.ctop.common.module.utils.ExportExcelUtils;
 import cn.com.ctop.kuaishou.modules.live.entity.LiveDataAd;
+import cn.com.ctop.kuaishou.modules.live.enums.AdEnum;
+import cn.com.ctop.kuaishou.modules.live.enums.ProvinceEnum;
 import cn.com.ctop.kuaishou.modules.live.enums.liveDataUtil;
 import cn.com.ctop.kuaishou.modules.live.mapper.LiveDataAdMapper;
 import cn.com.ctop.kuaishou.modules.live.service.ILiveDataAdService;
@@ -78,13 +80,7 @@ public class LiveDataAdServiceImpl extends ServiceImpl<LiveDataAdMapper, LiveDat
                     String code = titleObj.getString(String.valueOf(j));
                     //URL 和 日期 为空时,添加不成功!
                     if (Check.isNull(value)) {
-                        if ("liveId".equals(code)) {
-                            return Result.error("数据缺失,文档中第" + (i + 1) + "行,【直播ID】为必填项,请补充完善后导入");
-                        } else if ("kuaishouName".equals(code)) {
-                            return Result.error("数据缺失,文档中第" + (i + 1) + "行,【快手号】为必填项,请补充完善后导入");
-                        } else if ("liveStartTime".equals(code)) {
-                            return Result.error("数据缺失,文档中第" + (i + 1) + "行,【直播开始时间】为必填项,请补充完善后导入");
-                        }
+                        return Result.error("数据缺失,文档中第" + (i + 1) + "行,【" + AdEnum.getNameByCode(code) + "】为空项,请补充完善后导入");
                     }
                     entityObj.put(code, value);
                 }
@@ -132,18 +128,22 @@ public class LiveDataAdServiceImpl extends ServiceImpl<LiveDataAdMapper, LiveDat
                 String value = values.get(j);
                 String code = titleObj.getString(String.valueOf(j));
                 if (Check.isNull(value)) {
-                    if ("liveId".equals(code)) {
-                        return Result.error("数据缺失,文档中第" + (i + 1) + "行,【直播ID】为必填项,请补充完善后导入");
-                    } else if ("kuaishouName".equals(code)) {
-                        return Result.error("数据缺失,文档中第" + (i + 1) + "行,【快手号】为必填项,请补充完善后导入");
-                    } else if ("liveStartTime".equals(code)) {
-                        return Result.error("数据缺失,文档中第" + (i + 1) + "行,【直播开始时间】为必填项,请补充完善后导入");
-                    }
+                    return Result.error("数据缺失,文档中第" + (i + 1) + "行,【" + AdEnum.getNameByCode(code) + "】为空项,请补充完善后导入");
                 }
                 if ("liveStartTime".equals(code) || "liveEndTime".equals(code)) {
                     value = DateUtils.formatDate(value.replace("/", "-"), DateUtils.NEW_FORMAT2);
                 }
-                entityObj.put(code, value);
+                if (value.contains("%")) {
+                    value = value.replace("%", "");
+                    if (!("0.00".equals(value) || "0.0".equals(value) || "0".equals(value))) {
+                        float f = Float.valueOf(value) / 100;
+                        entityObj.put(code, f);
+                    } else {
+                        entityObj.put(code, value);
+                    }
+                } else {
+                    entityObj.put(code, value);
+                }
             }
             entityObj.put("accountId", accountId);
             entityObj.put("id", accountId + "_" + DateUtils.formatDate("yyyyMMdd") + "_" + UUID.randomUUID().toString().replace("-", "").substring(0, 9));

+ 17 - 6
jeecg-boot-module-system/src/main/java/cn/com/ctop/kuaishou/modules/live/service/impl/LiveDataAgeServiceImpl.java

@@ -3,6 +3,7 @@ package cn.com.ctop.kuaishou.modules.live.service.impl;
 import cn.com.ctop.common.module.utils.Check;
 import cn.com.ctop.common.module.utils.ExportExcelUtils;
 import cn.com.ctop.kuaishou.modules.live.entity.LiveDataAge;
+import cn.com.ctop.kuaishou.modules.live.enums.ProvinceEnum;
 import cn.com.ctop.kuaishou.modules.live.enums.liveDataUtil;
 import cn.com.ctop.kuaishou.modules.live.mapper.LiveDataAgeMapper;
 import cn.com.ctop.kuaishou.modules.live.service.ILiveDataAgeService;
@@ -81,8 +82,8 @@ public class LiveDataAgeServiceImpl extends ServiceImpl<LiveDataAgeMapper, LiveD
                     String value = eeu.getCellValue2(row.getCell(j));
                     String code = titleObj.getString(String.valueOf(j));
                     // 省份为空时,添加不成功!
-                    if (Check.isNull(value) && TYPE.equals(code)) {
-                        return Result.error("数据缺失,文档中第" + (i + 1) + "行,【年龄分段】为必填项,请补充完善后导入");
+                    if (Check.isNull(value)) {
+                        return Result.error("数据缺失,文档中第" + (i + 1) + "行,【" + ProvinceEnum.getNameByCode(code) + "】为空项,请补充完善后导入");
                     }
                     entityObj.put(code, value);
                 }
@@ -122,7 +123,7 @@ public class LiveDataAgeServiceImpl extends ServiceImpl<LiveDataAgeMapper, LiveD
         files.close();
         List<List<String>> list = liveDataUtil.getCsvList(records);
         //获取映射关系
-        JSONObject titleObj = liveDataUtil.getCsvProvinceTitle(list.get(0), TYPE);
+        JSONObject titleObj = liveDataUtil.getCsvProvinceTitle(list.get(0));
         if (!titleObj.containsValue(TYPE)) {
             return Result.error("导入失败,文档中不包含【年龄分段】字段");
         }
@@ -135,10 +136,20 @@ public class LiveDataAgeServiceImpl extends ServiceImpl<LiveDataAgeMapper, LiveD
                 String value = values.get(j);
                 String code = titleObj.getString(String.valueOf(j));
                 // 省份为空时,添加不成功!
-                if (Check.isNull(value) && TYPE.equals(code)) {
-                    return Result.error("数据缺失,文档中第" + (i + 1) + "行,【年龄分段】为必填项,请补充完善后导入");
+                if (Check.isNull(value)) {
+                    return Result.error("数据缺失,文档中第" + (i + 1) + "行,【" + ProvinceEnum.getNameByCode(code) + "】为空项,请补充完善后导入");
+                }
+                if (value.contains("%")) {
+                    value = value.replace("%", "");
+                    if (!("0.00".equals(value) || "0.0".equals(value) || "0".equals(value))) {
+                        float f = Float.valueOf(value) / 100;
+                        entityObj.put(code, f);
+                    } else {
+                        entityObj.put(code, value);
+                    }
+                } else {
+                    entityObj.put(code, value);
                 }
-                entityObj.put(code, value);
             }
             entityObj.put("accountId", accountId);
             entityObj.put("statMonth", statMonth);

+ 17 - 6
jeecg-boot-module-system/src/main/java/cn/com/ctop/kuaishou/modules/live/service/impl/LiveDataGenderServiceImpl.java

@@ -4,6 +4,7 @@ package cn.com.ctop.kuaishou.modules.live.service.impl;
 import cn.com.ctop.common.module.utils.Check;
 import cn.com.ctop.common.module.utils.ExportExcelUtils;
 import cn.com.ctop.kuaishou.modules.live.entity.LiveDataGender;
+import cn.com.ctop.kuaishou.modules.live.enums.ProvinceEnum;
 import cn.com.ctop.kuaishou.modules.live.enums.liveDataUtil;
 import cn.com.ctop.kuaishou.modules.live.mapper.LiveDataGenderMapper;
 import cn.com.ctop.kuaishou.modules.live.service.ILiveDataGenderService;
@@ -82,8 +83,8 @@ public class LiveDataGenderServiceImpl extends ServiceImpl<LiveDataGenderMapper,
                     String value = eeu.getCellValue2(row.getCell(j));
                     String code = titleObj.getString(String.valueOf(j));
                     // 省份为空时,添加不成功!
-                    if (Check.isNull(value) && TYPE.equals(code)) {
-                        return Result.error("数据缺失,文档中第" + (i + 1) + "行,【性别】为必填项,请补充完善后导入");
+                    if (Check.isNull(value)) {
+                        return Result.error("数据缺失,文档中第" + (i + 1) + "行,【" + ProvinceEnum.getNameByCode(code) + "】为空项,请补充完善后导入");
                     }
                     entityObj.put(code, value);
                 }
@@ -123,7 +124,7 @@ public class LiveDataGenderServiceImpl extends ServiceImpl<LiveDataGenderMapper,
         files.close();
         List<List<String>> list = liveDataUtil.getCsvList(records);
         //获取映射关系
-        JSONObject titleObj = liveDataUtil.getCsvProvinceTitle(list.get(0), TYPE);
+        JSONObject titleObj = liveDataUtil.getCsvProvinceTitle(list.get(0));
         if (!titleObj.containsValue(TYPE)) {
             return Result.error("导入失败,文档中不包含【性别】字段");
         }
@@ -136,10 +137,20 @@ public class LiveDataGenderServiceImpl extends ServiceImpl<LiveDataGenderMapper,
                 String value = values.get(j);
                 String code = titleObj.getString(String.valueOf(j));
                 // 省份为空时,添加不成功!
-                if (Check.isNull(value) && TYPE.equals(code)) {
-                    return Result.error("数据缺失,文档中第" + (i + 1) + "行,【性别】为必填项,请补充完善后导入");
+                if (Check.isNull(value)) {
+                    return Result.error("数据缺失,文档中第" + (i + 1) + "行,【" + ProvinceEnum.getNameByCode(code) + "】为空项,请补充完善后导入");
+                }
+                if (value.contains("%")) {
+                    value = value.replace("%", "");
+                    if (!("0.00".equals(value) || "0.0".equals(value) || "0".equals(value))) {
+                        float f = Float.valueOf(value) / 100;
+                        entityObj.put(code, f);
+                    } else {
+                        entityObj.put(code, value);
+                    }
+                } else {
+                    entityObj.put(code, value);
                 }
-                entityObj.put(code, value);
             }
             entityObj.put("accountId", accountId);
             entityObj.put("statMonth", statMonth);

+ 14 - 14
jeecg-boot-module-system/src/main/java/cn/com/ctop/kuaishou/modules/live/service/impl/LiveDataMaterialServiceImpl.java

@@ -7,6 +7,8 @@ import cn.com.ctop.common.module.utils.KuaishouInterfaceConstant;
 import cn.com.ctop.common.module.utils.LoadFileUtil;
 import cn.com.ctop.common.module.vo.ResFileDTO;
 import cn.com.ctop.kuaishou.modules.live.entity.LiveDataMaterial;
+import cn.com.ctop.kuaishou.modules.live.enums.MaterialEnum;
+import cn.com.ctop.kuaishou.modules.live.enums.ProvinceEnum;
 import cn.com.ctop.kuaishou.modules.live.enums.liveDataUtil;
 import cn.com.ctop.kuaishou.modules.live.mapper.LiveDataMaterialMapper;
 import cn.com.ctop.kuaishou.modules.live.service.ILiveDataMaterialService;
@@ -90,13 +92,7 @@ public class LiveDataMaterialServiceImpl extends ServiceImpl<LiveDataMaterialMap
                     String code = titleObj.getString(String.valueOf(j));
                     //URL 和 日期 为空时,添加不成功!
                     if (Check.isNull(value)) {
-                        if ("videoId".equals(code)) {
-                            return Result.error("数据缺失,文档中第" + (i + 1) + "行,【视频ID】为必填项,请补充完善后导入");
-                        } else if ("statDate".equals(code)) {
-                            return Result.error("数据缺失,文档中第" + (i + 1) + "行,【时间】为必填项,请补充完善后导入");
-                        } else if ("videoUrl".equals(code)) {
-                            return Result.error("数据缺失,文档中第" + (i + 1) + "行,【视频链接】为必填项,请补充完善后导入");
-                        }
+                        return Result.error("数据缺失,文档中第" + (i + 1) + "行,【" + MaterialEnum.getNameByCode(code) + "】为空项,请补充完善后导入");
                     }
                     entityObj.put(code, value);
                 }
@@ -148,15 +144,19 @@ public class LiveDataMaterialServiceImpl extends ServiceImpl<LiveDataMaterialMap
                 String value = values.get(j);
                 String code = titleObj.getString(String.valueOf(j));
                 if (Check.isNull(value)) {
-                    if ("videoId".equals(code)) {
-                        return Result.error("数据缺失,文档中第" + (i + 1) + "行,【视频ID】为必填项,请补充完善后导入");
-                    } else if ("statDate".equals(code)) {
-                        return Result.error("数据缺失,文档中第" + (i + 1) + "行,【时间】为必填项,请补充完善后导入");
-                    } else if ("videoUrl".equals(code)) {
-                        return Result.error("数据缺失,文档中第" + (i + 1) + "行,【视频链接】为必填项,请补充完善后导入");
+                    return Result.error("数据缺失,文档中第" + (i + 1) + "行,【" + MaterialEnum.getNameByCode(code) + "】为空项,请补充完善后导入");
+                }
+                if (value.contains("%")) {
+                    value = value.replace("%", "");
+                    if (!("0.00".equals(value) || "0.0".equals(value) || "0".equals(value))) {
+                        float f = Float.valueOf(value) / 100;
+                        entityObj.put(code, f);
+                    } else {
+                        entityObj.put(code, value);
                     }
+                } else {
+                    entityObj.put(code, value);
                 }
-                entityObj.put(code, value);
             }
             entityObj.put("accountId", accountId);
             entityObj.put("id", accountId + "_" + DateUtils.formatDate("yyyyMMdd") + "_" + UUID.randomUUID().toString().replace("-", "").substring(0, 9));

+ 17 - 6
jeecg-boot-module-system/src/main/java/cn/com/ctop/kuaishou/modules/live/service/impl/LiveDataPriceServiceImpl.java

@@ -3,6 +3,7 @@ package cn.com.ctop.kuaishou.modules.live.service.impl;
 import cn.com.ctop.common.module.utils.Check;
 import cn.com.ctop.common.module.utils.ExportExcelUtils;
 import cn.com.ctop.kuaishou.modules.live.entity.LiveDataPrice;
+import cn.com.ctop.kuaishou.modules.live.enums.ProvinceEnum;
 import cn.com.ctop.kuaishou.modules.live.enums.liveDataUtil;
 import cn.com.ctop.kuaishou.modules.live.mapper.LiveDataPriceMapper;
 import cn.com.ctop.kuaishou.modules.live.service.ILiveDataPriceService;
@@ -80,8 +81,8 @@ public class LiveDataPriceServiceImpl extends ServiceImpl<LiveDataPriceMapper, L
                     String value = eeu.getCellValue2(row.getCell(j));
                     String code = titleObj.getString(String.valueOf(j));
                     // 省份为空时,添加不成功!
-                    if (Check.isNull(value) && TYPE.equals(code)) {
-                        return Result.error("数据缺失,文档中第" + (i + 1) + "行,【设备价格】为必填项,请补充完善后导入");
+                    if (Check.isNull(value)) {
+                        return Result.error("数据缺失,文档中第" + (i + 1) + "行,【" + ProvinceEnum.getNameByCode(code) + "】为空项,请补充完善后导入");
                     }
                     entityObj.put(code, value);
                 }
@@ -121,7 +122,7 @@ public class LiveDataPriceServiceImpl extends ServiceImpl<LiveDataPriceMapper, L
         files.close();
         List<List<String>> list = liveDataUtil.getCsvList(records);
         //获取映射关系
-        JSONObject titleObj = liveDataUtil.getCsvProvinceTitle(list.get(0), TYPE);
+        JSONObject titleObj = liveDataUtil.getCsvProvinceTitle(list.get(0));
         if (!titleObj.containsValue(TYPE)) {
             return Result.error("导入失败,文档中不包含【设备价格】字段");
         }
@@ -134,10 +135,20 @@ public class LiveDataPriceServiceImpl extends ServiceImpl<LiveDataPriceMapper, L
                 String value = values.get(j);
                 String code = titleObj.getString(String.valueOf(j));
                 // 省份为空时,添加不成功!
-                if (Check.isNull(value) && TYPE.equals(code)) {
-                    return Result.error("数据缺失,文档中第" + (i + 1) + "行,【设备价格】为必填项,请补充完善后导入");
+                if (Check.isNull(value)) {
+                    return Result.error("数据缺失,文档中第" + (i + 1) + "行,【" + ProvinceEnum.getNameByCode(code) + "】为空项,请补充完善后导入");
+                }
+                if (value.contains("%")) {
+                    value = value.replace("%", "");
+                    if (!("0.00".equals(value) || "0.0".equals(value) || "0".equals(value))) {
+                        float f = Float.valueOf(value) / 100;
+                        entityObj.put(code, f);
+                    } else {
+                        entityObj.put(code, value);
+                    }
+                } else {
+                    entityObj.put(code, value);
                 }
-                entityObj.put(code, value);
             }
             entityObj.put("accountId", accountId);
             entityObj.put("statMonth", statMonth);

+ 17 - 6
jeecg-boot-module-system/src/main/java/cn/com/ctop/kuaishou/modules/live/service/impl/LiveDataProvinceServiceImpl.java

@@ -3,6 +3,7 @@ package cn.com.ctop.kuaishou.modules.live.service.impl;
 import cn.com.ctop.common.module.utils.Check;
 import cn.com.ctop.common.module.utils.ExportExcelUtils;
 import cn.com.ctop.kuaishou.modules.live.entity.LiveDataProvince;
+import cn.com.ctop.kuaishou.modules.live.enums.ProvinceEnum;
 import cn.com.ctop.kuaishou.modules.live.enums.liveDataUtil;
 import cn.com.ctop.kuaishou.modules.live.mapper.LiveDataProvinceMapper;
 import cn.com.ctop.kuaishou.modules.live.service.ILiveDataProvinceService;
@@ -80,8 +81,8 @@ public class LiveDataProvinceServiceImpl extends ServiceImpl<LiveDataProvinceMap
                     String value = eeu.getCellValue2(row.getCell(j));
                     String code = titleObj.getString(String.valueOf(j));
                     // 省份为空时,添加不成功!
-                    if (Check.isNull(value) && TYPE.equals(code)) {
-                        return Result.error("数据缺失,文档中第" + (i + 1) + "行,【省份】为必填项,请补充完善后导入");
+                    if (Check.isNull(value)) {
+                        return Result.error("数据缺失,文档中第" + (i + 1) + "行,【" + ProvinceEnum.getNameByCode(code) + "】为空项,请补充完善后导入");
                     }
                     entityObj.put(code, value);
                 }
@@ -121,7 +122,7 @@ public class LiveDataProvinceServiceImpl extends ServiceImpl<LiveDataProvinceMap
         files.close();
         List<List<String>> list = liveDataUtil.getCsvList(records);
         //获取映射关系
-        JSONObject titleObj = liveDataUtil.getCsvProvinceTitle(list.get(0), TYPE);
+        JSONObject titleObj = liveDataUtil.getCsvProvinceTitle(list.get(0));
         if (!titleObj.containsValue(TYPE)) {
             return Result.error("导入失败,文档中不包含【省份】字段");
         }
@@ -133,10 +134,20 @@ public class LiveDataProvinceServiceImpl extends ServiceImpl<LiveDataProvinceMap
                 String value = values.get(j);
                 String code = titleObj.getString(String.valueOf(j));
                 // 省份为空时,添加不成功!
-                if (Check.isNull(value) && TYPE.equals(code)) {
-                    return Result.error("数据缺失,文档中第" + (i + 1) + "行,【省份】为必填项,请补充完善后导入");
+                if (Check.isNull(value)) {
+                    return Result.error("数据缺失,文档中第" + (i + 1) + "行,【" + ProvinceEnum.getNameByCode(code) + "】为空项,请补充完善后导入");
+                }
+                if (value.contains("%")) {
+                    value = value.replace("%", "");
+                    if (!("0.00".equals(value) || "0.0".equals(value) || "0".equals(value))) {
+                        float f = Float.valueOf(value) / 100;
+                        entityObj.put(code, f);
+                    } else {
+                        entityObj.put(code, value);
+                    }
+                } else {
+                    entityObj.put(code, value);
                 }
-                entityObj.put(code, value);
             }
             entityObj.put("accountId", accountId);
             entityObj.put("statMonth", statMonth);

+ 16 - 16
jeecg-boot-module-system/src/main/java/cn/com/ctop/kuaishou/modules/live/service/impl/LiveDataTouchServiceImpl.java

@@ -3,6 +3,8 @@ package cn.com.ctop.kuaishou.modules.live.service.impl;
 import cn.com.ctop.common.module.utils.Check;
 import cn.com.ctop.common.module.utils.ExportExcelUtils;
 import cn.com.ctop.kuaishou.modules.live.entity.LiveDataTouch;
+import cn.com.ctop.kuaishou.modules.live.enums.ProvinceEnum;
+import cn.com.ctop.kuaishou.modules.live.enums.TouchEnum;
 import cn.com.ctop.kuaishou.modules.live.enums.liveDataUtil;
 import cn.com.ctop.kuaishou.modules.live.mapper.LiveDataTouchMapper;
 import cn.com.ctop.kuaishou.modules.live.service.ILiveDataTouchService;
@@ -77,13 +79,7 @@ public class LiveDataTouchServiceImpl extends ServiceImpl<LiveDataTouchMapper, L
                     String code = titleObj.getString(String.valueOf(j));
                     //URL 和 日期 为空时,添加不成功!
                     if (Check.isNull(value)) {
-                        if ("fanStrat".equals(code)) {
-                            return Result.error("数据缺失,文档中第" + (i + 1) + "行,【粉丝分层】为必填项,请补充完善后导入");
-                        } else if ("customerStrat".equals(code)) {
-                            return Result.error("数据缺失,文档中第" + (i + 1) + "行,【客群分层】为必填项,请补充完善后导入");
-                        } else if ("statDate".equals(code)) {
-                            return Result.error("数据缺失,文档中第" + (i + 1) + "行,【时间】为必填项,请补充完善后导入");
-                        }
+                        return Result.error("数据缺失,文档中第" + (i + 1) + "行,【" + TouchEnum.getNameByCode(code) + "】为空项,请补充完善后导入");
                     }
                     entityObj.put(code, value);
                 }
@@ -130,18 +126,22 @@ public class LiveDataTouchServiceImpl extends ServiceImpl<LiveDataTouchMapper, L
                 String value = values.get(j);
                 String code = titleObj.getString(String.valueOf(j));
                 if (Check.isNull(value)) {
-                    if ("fanStrat".equals(code)) {
-                        return Result.error("数据缺失,文档中第" + (i + 1) + "行,【粉丝分层】为必填项,请补充完善后导入");
-                    } else if ("customerStrat".equals(code)) {
-                        return Result.error("数据缺失,文档中第" + (i + 1) + "行,【客群分层】为必填项,请补充完善后导入");
-                    } else if ("statDate".equals(code)) {
-                        return Result.error("数据缺失,文档中第" + (i + 1) + "行,【时间】为必填项,请补充完善后导入");
-                    }
+                    return Result.error("数据缺失,文档中第" + (i + 1) + "行,【" + TouchEnum.getNameByCode(code) + "】为空项,请补充完善后导入");
                 }
                 if ("statDate".equals(code)) {
-                    value = DateUtils.formatDate(value.replace("/","-"), DateUtils.WEB_FORMAT);
+                    value = DateUtils.formatDate(value.replace("/", "-"), DateUtils.WEB_FORMAT);
+                }
+                if (value.contains("%")) {
+                    value = value.replace("%", "");
+                    if (!("0.00".equals(value) || "0.0".equals(value) || "0".equals(value))) {
+                        float f = Float.valueOf(value) / 100;
+                        entityObj.put(code, f);
+                    } else {
+                        entityObj.put(code, value);
+                    }
+                } else {
+                    entityObj.put(code, value);
                 }
-                entityObj.put(code, value);
             }
             entityObj.put("accountId", accountId);
             entityObj.put("id", accountId + "_" + DateUtils.formatDate("yyyyMMdd") + "_" + UUID.randomUUID().toString().replace("-", "").substring(0, 9));