Ver Fonte

根据权力类型调整修改删除方法

chenendian há 1 dia atrás
pai
commit
7f8bbe4e87

+ 3 - 3
siwei-modules/siwei-apply/src/main/java/com/siwei/apply/mapper/CadastreFileMapper.java

@@ -81,15 +81,15 @@ public interface CadastreFileMapper {
      */
      */
     void addValidFlagColumn(@Param("tableName") String tableName);
     void addValidFlagColumn(@Param("tableName") String tableName);
 
 
-    void updateValidFlag(@Param("validFlag") String validFlag, @Param("oldValidFlag") String oldValidFlag, @Param("tableName") String tableName);
+    void updateValidFlag(@Param("validFlag") String validFlag, @Param("oldValidFlag") String oldValidFlag,@Param("landRightType") String landRightType, @Param("tableName") String tableName);
 
 
 
 
-    void deleteByValidFlag(@Param("validFlag") String validFlag,@Param("tableName") String tableName);
+    void deleteByValidFlag(@Param("validFlag") String validFlag,@Param("landRightType") String landRightType,@Param("tableName") String tableName);
 
 
 
 
     Integer countByValidFlag(@Param("validFlag") String validFlag, @Param("tableName") String tableName);
     Integer countByValidFlag(@Param("validFlag") String validFlag, @Param("tableName") String tableName);
 
 
-    List<Map<String,Object>> selectTableData(@Param("validFlag") String validFlag, @Param("tableName") String tableName);
+    List<Map<String,Object>> selectTableData(@Param("validFlag") String validFlag,@Param("landRightType") String landRightType, @Param("tableName") String tableName);
 
 
     Map<String,Object> selectExistsSameData(@Param("validFlag") String validFlag, @Param("data") Map<String, Object> data, @Param("tableName") String tableName);
     Map<String,Object> selectExistsSameData(@Param("validFlag") String validFlag, @Param("data") Map<String, Object> data, @Param("tableName") String tableName);
 
 

+ 16 - 14
siwei-modules/siwei-apply/src/main/java/com/siwei/apply/service/cadastre/impl/CadastreManageServiceImpl.java

@@ -1261,6 +1261,7 @@ public class CadastreManageServiceImpl implements CadastreManageService {
 
 
     private List<String> getDbGeom(String tableName,String landRightType) {
     private List<String> getDbGeom(String tableName,String landRightType) {
         List<String> list = new ArrayList<>();
         List<String> list = new ArrayList<>();
+        tableName = com.siwei.common.core.utils.StringUtils.toRootLowerCase(tableName);
         String geomsStr = cadastreFileMapper.selectGeoms(tableName,landRightType);
         String geomsStr = cadastreFileMapper.selectGeoms(tableName,landRightType);
         if (StringUtils.isNotBlank(geomsStr)) {
         if (StringUtils.isNotBlank(geomsStr)) {
             list = Arrays.asList(geomsStr.split("\\|"));
             list = Arrays.asList(geomsStr.split("\\|"));
@@ -1297,14 +1298,13 @@ public class CadastreManageServiceImpl implements CadastreManageService {
                 return newMap;
                 return newMap;
             }).collect(Collectors.toList());
             }).collect(Collectors.toList());
 
 
-
             List<Map<String, String>> dbFieldNameAndTypeList = cadastreFileMapper.selectTableCollumAndType(tableName.toLowerCase(Locale.ROOT));
             List<Map<String, String>> dbFieldNameAndTypeList = cadastreFileMapper.selectTableCollumAndType(tableName.toLowerCase(Locale.ROOT));
             Map<String, String> columnTypeMap = new LinkedHashMap<>();
             Map<String, String> columnTypeMap = new LinkedHashMap<>();
             for (Map<String, String> col : dbFieldNameAndTypeList) {
             for (Map<String, String> col : dbFieldNameAndTypeList) {
                 columnTypeMap.put(col.get("column_name"), col.get("data_type"));
                 columnTypeMap.put(col.get("column_name"), col.get("data_type"));
             }
             }
-            cadastreFileMapper.deleteByValidFlag("1", tableName);
-            cadastreFileMapper.updateValidFlag("1", "0", tableName);
+            cadastreFileMapper.deleteByValidFlag("1",landRightType, tableName);
+            cadastreFileMapper.updateValidFlag("1", "0",landRightType, tableName);
             for (Map<String, Object> map : theValueList) {
             for (Map<String, Object> map : theValueList) {
                 map.put("valid_flag", 0);
                 map.put("valid_flag", 0);
                 cleanDataForInsert(map, columnTypeMap);
                 cleanDataForInsert(map, columnTypeMap);
@@ -1467,8 +1467,8 @@ public class CadastreManageServiceImpl implements CadastreManageService {
             for (Map<String, String> col : dbFieldNameAndTypeList) {
             for (Map<String, String> col : dbFieldNameAndTypeList) {
                 columnTypeMap.put(col.get("column_name"), col.get("data_type"));
                 columnTypeMap.put(col.get("column_name"), col.get("data_type"));
             }
             }
-            cadastreFileMapper.deleteByValidFlag("1", tableName);
-            List<Map<String, Object>> dbDataList = cadastreFileMapper.selectTableData("0", tableName);
+            cadastreFileMapper.deleteByValidFlag("1",landRightType, tableName);
+            List<Map<String, Object>> dbDataList = cadastreFileMapper.selectTableData("0",landRightType, tableName);
             List<Map<String, Object>> dbExistsList = new ArrayList<>();
             List<Map<String, Object>> dbExistsList = new ArrayList<>();
             for (Map<String, Object> map : theValueList) {
             for (Map<String, Object> map : theValueList) {
                 Map<String, Object> dbExistsMap = cadastreFileMapper.selectExistsSameData("0", map, tableName);
                 Map<String, Object> dbExistsMap = cadastreFileMapper.selectExistsSameData("0", map, tableName);
@@ -1487,7 +1487,7 @@ public class CadastreManageServiceImpl implements CadastreManageService {
                 theValueList.addAll(dbDataList);
                 theValueList.addAll(dbDataList);
             }
             }
 
 
-            cadastreFileMapper.updateValidFlag("1", "0", tableName);
+            cadastreFileMapper.updateValidFlag("1", "0",landRightType, tableName);
             for (Map<String, Object> map : theValueList) {
             for (Map<String, Object> map : theValueList) {
                 map.put("valid_flag", 0);
                 map.put("valid_flag", 0);
                 cleanDataForInsert(map, columnTypeMap);
                 cleanDataForInsert(map, columnTypeMap);
@@ -1565,10 +1565,10 @@ public class CadastreManageServiceImpl implements CadastreManageService {
     public String backToOldData(String uploadId) {
     public String backToOldData(String uploadId) {
         try {
         try {
             CadastreFile cadastreFile = cadastreFileMapper.get(uploadId);
             CadastreFile cadastreFile = cadastreFileMapper.get(uploadId);
+            String landRightType = cadastreFile.getLandRightType();
             if (!"1".equals(cadastreFile.getStatus())) {
             if (!"1".equals(cadastreFile.getStatus())) {
                 throw new ServiceException("可能未入库成功,无法回退");
                 throw new ServiceException("可能未入库成功,无法回退");
             }
             }
-
             List<String> fileTableNameList = new ArrayList<>();
             List<String> fileTableNameList = new ArrayList<>();
             if ("1".equals(cadastreFile.getFileType())) {//矢量数据
             if ("1".equals(cadastreFile.getFileType())) {//矢量数据
                 fileTableNameList = getLayerNameList(uploadId);
                 fileTableNameList = getLayerNameList(uploadId);
@@ -1585,9 +1585,8 @@ public class CadastreManageServiceImpl implements CadastreManageService {
             }
             }
 
 
             for (String layerName : fileTableNameList) {
             for (String layerName : fileTableNameList) {
-
-                cadastreFileMapper.deleteByValidFlag("0", layerName.toLowerCase(Locale.ROOT));
-                cadastreFileMapper.updateValidFlag("0", "1", layerName.toLowerCase(Locale.ROOT));
+                cadastreFileMapper.deleteByValidFlag("0",landRightType,layerName.toLowerCase(Locale.ROOT));
+                cadastreFileMapper.updateValidFlag("0", "1",landRightType, layerName.toLowerCase(Locale.ROOT));
                 log.info("正在回退表:{}。。。", layerName);
                 log.info("正在回退表:{}。。。", layerName);
             }
             }
         } catch (Exception e) {
         } catch (Exception e) {
@@ -1656,6 +1655,7 @@ public class CadastreManageServiceImpl implements CadastreManageService {
         List<LayerAndDbData> resList = new ArrayList<>();
         List<LayerAndDbData> resList = new ArrayList<>();
         try {
         try {
             CadastreFile cadastreFile = cadastreFileMapper.get(uploadId);
             CadastreFile cadastreFile = cadastreFileMapper.get(uploadId);
+            String landRightType = cadastreFile.getLandRightType();
             //这里判断是否校验通过
             //这里判断是否校验通过
             if (!cadastreFile.getStatus().equalsIgnoreCase("3")) {
             if (!cadastreFile.getStatus().equalsIgnoreCase("3")) {
                 log.info("校验未通过,不能入库");
                 log.info("校验未通过,不能入库");
@@ -1682,7 +1682,7 @@ public class CadastreManageServiceImpl implements CadastreManageService {
                         (existing, replacement) -> existing // 如果有重复键,保留第一个值
                         (existing, replacement) -> existing // 如果有重复键,保留第一个值
                 ));
                 ));
                 List<Map<String, Object>> theValueList = getValueList(layer, dbFieldNameAndTypeMap, haveGeom);
                 List<Map<String, Object>> theValueList = getValueList(layer, dbFieldNameAndTypeMap, haveGeom);
-                List<Map<String, Object>> dbDataList = cadastreFileMapper.selectTableData("0", layerName);
+                List<Map<String, Object>> dbDataList = cadastreFileMapper.selectTableData("0",landRightType,layerName);
 
 
                 layerAndDbData.setAddTotalNum(theValueList.size());
                 layerAndDbData.setAddTotalNum(theValueList.size());
                 layerAndDbData.setInsertNum(theValueList.size());
                 layerAndDbData.setInsertNum(theValueList.size());
@@ -1711,6 +1711,7 @@ public class CadastreManageServiceImpl implements CadastreManageService {
         List<LayerAndDbData> resList = new ArrayList<>();
         List<LayerAndDbData> resList = new ArrayList<>();
         try {
         try {
             CadastreFile cadastreFile = cadastreFileMapper.get(uploadId);
             CadastreFile cadastreFile = cadastreFileMapper.get(uploadId);
+            String landRightType = cadastreFile.getLandRightType();
             //这里判断是否校验通过
             //这里判断是否校验通过
             if (!cadastreFile.getStatus().equalsIgnoreCase("3")) {
             if (!cadastreFile.getStatus().equalsIgnoreCase("3")) {
                 log.info("校验未通过,不能入库");
                 log.info("校验未通过,不能入库");
@@ -1726,7 +1727,7 @@ public class CadastreManageServiceImpl implements CadastreManageService {
 
 
                 Map<String, Object> allMdbTableFieldMap = MdbUtil.MdbTableContent(gdbPath + "/" + cadastreFile.getName(), talbleName, "", "", 1, 1000);
                 Map<String, Object> allMdbTableFieldMap = MdbUtil.MdbTableContent(gdbPath + "/" + cadastreFile.getName(), talbleName, "", "", 1, 1000);
                 List<Map<String, Object>> theValueList = (List<Map<String, Object>>) allMdbTableFieldMap.get("rows");
                 List<Map<String, Object>> theValueList = (List<Map<String, Object>>) allMdbTableFieldMap.get("rows");
-                List<Map<String, Object>> dbDataList = cadastreFileMapper.selectTableData("0", talbleName);
+                List<Map<String, Object>> dbDataList = cadastreFileMapper.selectTableData("0",landRightType, talbleName);
 
 
                 layerAndDbData.setAddTotalNum(theValueList.size());
                 layerAndDbData.setAddTotalNum(theValueList.size());
                 layerAndDbData.setInsertNum(theValueList.size());
                 layerAndDbData.setInsertNum(theValueList.size());
@@ -1748,6 +1749,7 @@ public class CadastreManageServiceImpl implements CadastreManageService {
         List<MdbAndDbData> resList = new ArrayList<>();
         List<MdbAndDbData> resList = new ArrayList<>();
         try {
         try {
             CadastreFile cadastreFile = cadastreFileMapper.get(uploadId);
             CadastreFile cadastreFile = cadastreFileMapper.get(uploadId);
+            String landRightType = cadastreFile.getLandRightType();
             //这里判断是否校验通过
             //这里判断是否校验通过
             if (!cadastreFile.getStatus().equalsIgnoreCase("3")) {
             if (!cadastreFile.getStatus().equalsIgnoreCase("3")) {
                 log.info("校验未通过,不能入库");
                 log.info("校验未通过,不能入库");
@@ -1769,7 +1771,7 @@ public class CadastreManageServiceImpl implements CadastreManageService {
 
 
                 Map<String, Object> allMdbTableFieldMap = MdbUtil.MdbTableContent(gdbPath + "/" + cadastreFile.getName(), talbleName, "", "", 1, 1000);
                 Map<String, Object> allMdbTableFieldMap = MdbUtil.MdbTableContent(gdbPath + "/" + cadastreFile.getName(), talbleName, "", "", 1, 1000);
                 List<Map<String, Object>> theValueList = (List<Map<String, Object>>) allMdbTableFieldMap.get("rows");
                 List<Map<String, Object>> theValueList = (List<Map<String, Object>>) allMdbTableFieldMap.get("rows");
-                List<Map<String, Object>> dbDataList = cadastreFileMapper.selectTableData("0", talbleName);
+                List<Map<String, Object>> dbDataList = cadastreFileMapper.selectTableData("0",landRightType, talbleName);
 
 
                 //这里进行遍历dbDataList,判断是否存在bsm字段,且bsm字段是否存在于theValueList中
                 //这里进行遍历dbDataList,判断是否存在bsm字段,且bsm字段是否存在于theValueList中
                 Set<String> mdbBsmSet = theValueList.stream()
                 Set<String> mdbBsmSet = theValueList.stream()
@@ -1955,7 +1957,7 @@ public class CadastreManageServiceImpl implements CadastreManageService {
             }
             }
 
 
             // 2. 获取表数据 (获取 valid_flag 为 0 的当前版本数据)
             // 2. 获取表数据 (获取 valid_flag 为 0 的当前版本数据)
-            List<Map<String, Object>> dataList = cadastreFileMapper.selectTableData("", tableName);
+            List<Map<String, Object>> dataList = cadastreFileMapper.selectTableData("","", tableName);
 
 
             // 3. 构造完整的文件路径
             // 3. 构造完整的文件路径
             String mdbPath = filePath;
             String mdbPath = filePath;

+ 1 - 1
siwei-modules/siwei-apply/src/main/java/com/siwei/apply/service/impl/ConvergeServiceImpl.java

@@ -269,7 +269,7 @@ public class ConvergeServiceImpl implements ConvergeService {
             List<ConvergeRes> convergeTableList = new ArrayList<>();
             List<ConvergeRes> convergeTableList = new ArrayList<>();
             Arrays.stream(ConvergeTableEnum.values()).forEach(e -> {
             Arrays.stream(ConvergeTableEnum.values()).forEach(e -> {
                 String tableName = e.getTableName();
                 String tableName = e.getTableName();
-                List<Map<String,Object>> tableDataList = cadastreFileMapper.selectTableData("",tableName);
+                List<Map<String,Object>> tableDataList = cadastreFileMapper.selectTableData("","",tableName);
                 if(CollectionUtils.isNotEmpty(tableDataList)){
                 if(CollectionUtils.isNotEmpty(tableDataList)){
                     List<Map<String,String>> tableFieldList = cadastreFileMapper.selectTableCollumAndType(tableName);
                     List<Map<String,String>> tableFieldList = cadastreFileMapper.selectTableCollumAndType(tableName);
                     int convergeType = 2;
                     int convergeType = 2;

+ 12 - 1
siwei-modules/siwei-apply/src/main/resources/mapper/cadastre/CadastreFileMapper.xml

@@ -293,10 +293,18 @@
         <if test="oldValidFlag != null and oldValidFlag != ''">
         <if test="oldValidFlag != null and oldValidFlag != ''">
             and valid_flag= #{oldValidFlag}::int2
             and valid_flag= #{oldValidFlag}::int2
         </if>
         </if>
+        <!-- 兼容宗地相关的权力类型  -->
+        <if test="landRightType != null and landRightType != ''">
+            and sm= #{landRightType}
+        </if>
     </update>
     </update>
 
 
     <delete id="deleteByValidFlag">
     <delete id="deleteByValidFlag">
-        DELETE  FROM  vector.${tableName}   WHERE valid_flag = #{validFlag}::int2
+        DELETE  FROM  vector.${tableName}
+        WHERE valid_flag = #{validFlag}::int2
+        <if test="landRightType != null and landRightType != ''">
+            and sm= #{landRightType}
+        </if>
     </delete>
     </delete>
 
 
     <select id="selectTableData"   resultType="Map">
     <select id="selectTableData"   resultType="Map">
@@ -305,6 +313,9 @@
         <if test="validFlag != null and validFlag != ''">
         <if test="validFlag != null and validFlag != ''">
             and valid_flag= #{validFlag}::int2
             and valid_flag= #{validFlag}::int2
         </if>
         </if>
+        <if test="landRightType != null and landRightType != ''">
+            and sm= #{landRightType}
+        </if>
     </select>
     </select>
 
 
     <select id="selectTableDataByCondition"   resultType="Map">
     <select id="selectTableDataByCondition"   resultType="Map">