cc 4 tháng trước cách đây
mục cha
commit
dfcbca0fcf

+ 45 - 0
src/main/java/com/qingjian/module/dm/clean/AbstractExternalDataCleaner.java

@@ -0,0 +1,45 @@
+package com.qingjian.module.dm.clean;
+
+import cn.hutool.core.util.IdUtil;
+import cn.hutool.core.util.ReUtil;
+import cn.hutool.core.util.ReflectUtil;
+import cn.hutool.core.util.StrUtil;
+import com.qingjian.common.base.Cleaned;
+import com.qingjian.common.cache.GlobalCache;
+import com.qingjian.common.model.dm.dto.TableRuleDTO;
+import com.qingjian.module.dm.clean.func.FunProcess;
+import lombok.extern.slf4j.Slf4j;
+
+import java.util.Map;
+
+@Slf4j
+public abstract class AbstractExternalDataCleaner<T extends Cleaned> extends AbstractDataCleaner<T> {
+
+    protected abstract T createEntity();
+
+    @Override
+    protected CleanResult<T> doClean(Map<Integer, String> rowData, Integer lineNo) {
+        CleanResult<T> cleanResult = new CleanResult<>();
+        T data = createEntity();
+        for (TableRuleDTO rule : tableRules) {
+            int fileColIndex = rule.getFileColIndex();
+            String content = getContent(rowData, fileColIndex, rule.getColumnRule());
+            if (StrUtil.isEmpty(content)) {
+                continue;
+            }
+            String copyContent = ReUtil.replaceAll(content.trim(), GlobalCache.SPECIAL_CHARS_PATTERN, "");
+            FunProcess funProcess = FunProcess.create().onException((e) -> log.error("清洗函数字段处理异常: {}", content, e));
+            if (funProcess.isExecute()) {
+                copyContent = funProcess.process(copyContent);
+            }
+            ReflectUtil.setFieldValue(data, rule.getFieldNameEn(), copyContent);
+        }
+        if (cleanResult.isValid()) {
+            data.setId(IdUtil.getSnowflakeNextId());
+            data.setFileId(fileId);
+            data.setSheetId(sheetId);
+            cleanResult.setData(data);
+        }
+        return cleanResult;
+    }
+}

+ 14 - 0
src/main/java/com/qingjian/module/dm/clean/impl/cleaner/ExternalCertInfoCleaner.java

@@ -0,0 +1,14 @@
+package com.qingjian.module.dm.clean.impl.cleaner;
+
+import com.qingjian.common.model.external.entity.CertInfo;
+import com.qingjian.module.dm.clean.AbstractExternalDataCleaner;
+import lombok.extern.slf4j.Slf4j;
+
+@Slf4j
+public class ExternalCertInfoCleaner extends AbstractExternalDataCleaner<CertInfo> {
+
+    @Override
+    protected CertInfo createEntity() {
+        return new CertInfo();
+    }
+}

+ 14 - 0
src/main/java/com/qingjian/module/dm/clean/impl/cleaner/ExternalCoResidentCleaner.java

@@ -0,0 +1,14 @@
+package com.qingjian.module.dm.clean.impl.cleaner;
+
+import com.qingjian.common.model.external.entity.CoResident;
+import com.qingjian.module.dm.clean.AbstractExternalDataCleaner;
+import lombok.extern.slf4j.Slf4j;
+
+@Slf4j
+public class ExternalCoResidentCleaner extends AbstractExternalDataCleaner<CoResident> {
+
+    @Override
+    protected CoResident createEntity() {
+        return new CoResident();
+    }
+}

+ 14 - 0
src/main/java/com/qingjian/module/dm/clean/impl/cleaner/ExternalCoVehViolCleaner.java

@@ -0,0 +1,14 @@
+package com.qingjian.module.dm.clean.impl.cleaner;
+
+import com.qingjian.common.model.external.entity.CoVehViol;
+import com.qingjian.module.dm.clean.AbstractExternalDataCleaner;
+import lombok.extern.slf4j.Slf4j;
+
+@Slf4j
+public class ExternalCoVehViolCleaner extends AbstractExternalDataCleaner<CoVehViol> {
+
+    @Override
+    protected CoVehViol createEntity() {
+        return new CoVehViol();
+    }
+}

+ 14 - 0
src/main/java/com/qingjian/module/dm/clean/impl/cleaner/ExternalCriminalCleaner.java

@@ -0,0 +1,14 @@
+package com.qingjian.module.dm.clean.impl.cleaner;
+
+import com.qingjian.common.model.external.entity.Criminal;
+import com.qingjian.module.dm.clean.AbstractExternalDataCleaner;
+import lombok.extern.slf4j.Slf4j;
+
+@Slf4j
+public class ExternalCriminalCleaner extends AbstractExternalDataCleaner<Criminal> {
+
+    @Override
+    protected Criminal createEntity() {
+        return new Criminal();
+    }
+}

+ 14 - 0
src/main/java/com/qingjian/module/dm/clean/impl/cleaner/ExternalEntryRecCleaner.java

@@ -0,0 +1,14 @@
+package com.qingjian.module.dm.clean.impl.cleaner;
+
+import com.qingjian.common.model.external.entity.EntryRec;
+import com.qingjian.module.dm.clean.AbstractExternalDataCleaner;
+import lombok.extern.slf4j.Slf4j;
+
+@Slf4j
+public class ExternalEntryRecCleaner extends AbstractExternalDataCleaner<EntryRec> {
+
+    @Override
+    protected EntryRec createEntity() {
+        return new EntryRec();
+    }
+}

+ 14 - 0
src/main/java/com/qingjian/module/dm/clean/impl/cleaner/ExternalFugiCoCleaner.java

@@ -0,0 +1,14 @@
+package com.qingjian.module.dm.clean.impl.cleaner;
+
+import com.qingjian.common.model.external.entity.FugiCo;
+import com.qingjian.module.dm.clean.AbstractExternalDataCleaner;
+import lombok.extern.slf4j.Slf4j;
+
+@Slf4j
+public class ExternalFugiCoCleaner extends AbstractExternalDataCleaner<FugiCo> {
+
+    @Override
+    protected FugiCo createEntity() {
+        return new FugiCo();
+    }
+}

+ 14 - 0
src/main/java/com/qingjian/module/dm/clean/impl/cleaner/ExternalFugiCoRevokeCleaner.java

@@ -0,0 +1,14 @@
+package com.qingjian.module.dm.clean.impl.cleaner;
+
+import com.qingjian.common.model.external.entity.FugiCoRevoke;
+import com.qingjian.module.dm.clean.AbstractExternalDataCleaner;
+import lombok.extern.slf4j.Slf4j;
+
+@Slf4j
+public class ExternalFugiCoRevokeCleaner extends AbstractExternalDataCleaner<FugiCoRevoke> {
+
+    @Override
+    protected FugiCoRevoke createEntity() {
+        return new FugiCoRevoke();
+    }
+}

+ 14 - 0
src/main/java/com/qingjian/module/dm/clean/impl/cleaner/ExternalFugiRevokeCleaner.java

@@ -0,0 +1,14 @@
+package com.qingjian.module.dm.clean.impl.cleaner;
+
+import com.qingjian.common.model.external.entity.FugiRevoke;
+import com.qingjian.module.dm.clean.AbstractExternalDataCleaner;
+import lombok.extern.slf4j.Slf4j;
+
+@Slf4j
+public class ExternalFugiRevokeCleaner extends AbstractExternalDataCleaner<FugiRevoke> {
+
+    @Override
+    protected FugiRevoke createEntity() {
+        return new FugiRevoke();
+    }
+}

+ 14 - 0
src/main/java/com/qingjian/module/dm/clean/impl/cleaner/ExternalFugitiveCleaner.java

@@ -0,0 +1,14 @@
+package com.qingjian.module.dm.clean.impl.cleaner;
+
+import com.qingjian.common.model.external.entity.Fugitive;
+import com.qingjian.module.dm.clean.AbstractExternalDataCleaner;
+import lombok.extern.slf4j.Slf4j;
+
+@Slf4j
+public class ExternalFugitiveCleaner extends AbstractExternalDataCleaner<Fugitive> {
+
+    @Override
+    protected Fugitive createEntity() {
+        return new Fugitive();
+    }
+}

+ 14 - 0
src/main/java/com/qingjian/module/dm/clean/impl/cleaner/ExternalHouseholdCleaner.java

@@ -0,0 +1,14 @@
+package com.qingjian.module.dm.clean.impl.cleaner;
+
+import com.qingjian.common.model.external.entity.Household;
+import com.qingjian.module.dm.clean.AbstractExternalDataCleaner;
+import lombok.extern.slf4j.Slf4j;
+
+@Slf4j
+public class ExternalHouseholdCleaner extends AbstractExternalDataCleaner<Household> {
+
+    @Override
+    protected Household createEntity() {
+        return new Household();
+    }
+}

+ 14 - 0
src/main/java/com/qingjian/module/dm/clean/impl/cleaner/ExternalLicInfoCleaner.java

@@ -0,0 +1,14 @@
+package com.qingjian.module.dm.clean.impl.cleaner;
+
+import com.qingjian.common.model.external.entity.LicInfo;
+import com.qingjian.module.dm.clean.AbstractExternalDataCleaner;
+import lombok.extern.slf4j.Slf4j;
+
+@Slf4j
+public class ExternalLicInfoCleaner extends AbstractExternalDataCleaner<LicInfo> {
+
+    @Override
+    protected LicInfo createEntity() {
+        return new LicInfo();
+    }
+}

+ 14 - 0
src/main/java/com/qingjian/module/dm/clean/impl/cleaner/ExternalVehViolationCleaner.java

@@ -0,0 +1,14 @@
+package com.qingjian.module.dm.clean.impl.cleaner;
+
+import com.qingjian.common.model.external.entity.VehViolation;
+import com.qingjian.module.dm.clean.AbstractExternalDataCleaner;
+import lombok.extern.slf4j.Slf4j;
+
+@Slf4j
+public class ExternalVehViolationCleaner extends AbstractExternalDataCleaner<VehViolation> {
+
+    @Override
+    protected VehViolation createEntity() {
+        return new VehViolation();
+    }
+}

+ 14 - 0
src/main/java/com/qingjian/module/dm/clean/impl/cleaner/ExternalVehicleInfoCleaner.java

@@ -0,0 +1,14 @@
+package com.qingjian.module.dm.clean.impl.cleaner;
+
+import com.qingjian.common.model.external.entity.VehicleInfo;
+import com.qingjian.module.dm.clean.AbstractExternalDataCleaner;
+import lombok.extern.slf4j.Slf4j;
+
+@Slf4j
+public class ExternalVehicleInfoCleaner extends AbstractExternalDataCleaner<VehicleInfo> {
+
+    @Override
+    protected VehicleInfo createEntity() {
+        return new VehicleInfo();
+    }
+}