rain
2024-03-27 87e29ab2ace5aa1ff5484a631ace13e50344ddc8
图斑
5 files modified
1 files renamed
4 files added
147 ■■■■ changed files
pom.xml 6 ●●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/patches/controller/GetPatchesController.java 31 ●●●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/patches/controller/ShpToDataSourceController.java 4 ●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/patches/dao/GetPatchesMapper.java 10 ●●●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/patches/dao/ShpToDataSourceMapper.java 6 ●●●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/patches/model/entity/PatchesEntity.java 4 ●●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/patches/service/GetPatchesService.java 9 ●●●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/patches/service/impl/GetPatchesServiceImpl.java 30 ●●●●● patch | view | raw | blame | history
src/main/java/com/dji/sample/patches/service/impl/ShpToDataSourceServiceImpl.java 45 ●●●●● patch | view | raw | blame | history
src/main/resources/application-dev.yml 2 ●●● patch | view | raw | blame | history
pom.xml
@@ -241,11 +241,7 @@
            <version>0.7</version>
        </dependency>
        <dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper-spring-boot-starter</artifactId>
            <version>1.4.2</version>
        </dependency>
    </dependencies>
src/main/java/com/dji/sample/patches/controller/GetPatchesController.java
New file
@@ -0,0 +1,31 @@
package com.dji.sample.patches.controller;
import com.dji.sample.common.model.PaginationData;
import com.dji.sample.common.model.ResponseResult;
import com.dji.sample.log.aspect.SysLogAnnotation;
import com.dji.sample.patches.model.Param.PatchesParam;
import com.dji.sample.patches.model.entity.PatchesEntity;
import com.dji.sample.patches.service.GetPatchesService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@RequestMapping("${url.patches.prefix}${url.patches.version}")
@RestController
public class GetPatchesController {
    @Autowired
    private GetPatchesService getPatchesService;
    @GetMapping("/getPatches")
    @SysLogAnnotation(operModul = "图斑", operType = "查询", operDesc = "查询图斑的全部信息")
    public ResponseResult<PaginationData<PatchesEntity>> page(@RequestParam Integer page,
                                                              @RequestParam(name = "page_size", defaultValue = "10") Integer pageSize) {
        //调用service分页查询
        PatchesParam param=PatchesParam.builder()
                .page(page)
                .pageSize(pageSize).build();
        PaginationData<PatchesEntity> data = getPatchesService.limitGet(param);
        return ResponseResult.success(data);
    }
}
src/main/java/com/dji/sample/patches/controller/ShpToDataSourceController.java
@@ -1,5 +1,6 @@
package com.dji.sample.patches.controller;
import com.dji.sample.common.model.ResponseResult;
import com.dji.sample.patches.service.impl.ShpToDataSourceServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -14,8 +15,9 @@
    @Autowired
    private ShpToDataSourceServiceImpl shpToDataSourceServiceImpl;
    @PostMapping("/getGeo")
    public void getGeo (@RequestParam("file") MultipartFile file) throws IOException {
    public ResponseResult getGeo (@RequestParam("file") MultipartFile file) throws IOException {
        shpToDataSourceServiceImpl.insertGeo(file);
        return  ResponseResult.success();
    }
src/main/java/com/dji/sample/patches/dao/GetPatchesMapper.java
New file
@@ -0,0 +1,10 @@
package com.dji.sample.patches.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.dji.sample.patches.model.entity.PatchesEntity;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface GetPatchesMapper extends BaseMapper<PatchesEntity> {
}
src/main/java/com/dji/sample/patches/dao/ShpToDataSourceMapper.java
@@ -1,14 +1,12 @@
package com.dji.sample.patches.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.dji.sample.patches.model.DemoEntity;
import com.dji.sample.patches.model.entity.PatchesEntity;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface ShpToDataSourceMapper extends BaseMapper<DemoEntity> {
    @Insert("insert into tb_lot_info (dkfw,bsm,create_time,update_time) values (#{json},#{bsm},#{createTime},#{updateTime})")
    void insertJson(String json,String bsm, int createTime, int updateTime);
public interface ShpToDataSourceMapper extends BaseMapper<PatchesEntity> {
}
src/main/java/com/dji/sample/patches/model/entity/PatchesEntity.java
File was renamed from src/main/java/com/dji/sample/patches/model/PatchesEntity.java
@@ -1,4 +1,4 @@
package com.dji.sample.patches.model;
package com.dji.sample.patches.model.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
@@ -13,7 +13,7 @@
@Builder
@NoArgsConstructor
@AllArgsConstructor
@TableName(value = "tb_lot_info")
@TableName(value = "tb_lot_info_copy")
public class PatchesEntity implements Serializable {
    @TableId(type = IdType.AUTO)
src/main/java/com/dji/sample/patches/service/GetPatchesService.java
New file
@@ -0,0 +1,9 @@
package com.dji.sample.patches.service;
import com.dji.sample.common.model.PaginationData;
import com.dji.sample.patches.model.Param.PatchesParam;
import com.dji.sample.patches.model.entity.PatchesEntity;
public interface GetPatchesService {
    PaginationData<PatchesEntity> limitGet(PatchesParam param);
}
src/main/java/com/dji/sample/patches/service/impl/GetPatchesServiceImpl.java
New file
@@ -0,0 +1,30 @@
package com.dji.sample.patches.service.impl;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dji.sample.common.model.Pagination;
import com.dji.sample.common.model.PaginationData;
import com.dji.sample.patches.dao.GetPatchesMapper;
import com.dji.sample.patches.model.Param.PatchesParam;
import com.dji.sample.patches.model.entity.PatchesEntity;
import com.dji.sample.patches.service.GetPatchesService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.stream.Collectors;
@Service
public class GetPatchesServiceImpl implements GetPatchesService {
    @Autowired
    private GetPatchesMapper mapper;
    @Override
    public PaginationData<PatchesEntity> limitGet(PatchesParam param) {
        Page<PatchesEntity> page = mapper.selectPage(new Page<PatchesEntity>(param.getPage(), param.getPageSize()), null);
        List<PatchesEntity> records = page.getRecords()
                .stream()
                .collect(Collectors.toList());
        return new PaginationData<PatchesEntity>(records, new Pagination(page));
    }
}
src/main/java/com/dji/sample/patches/service/impl/ShpToDataSourceServiceImpl.java
@@ -1,6 +1,9 @@
package com.dji.sample.patches.service.impl;
import com.dji.sample.patches.dao.ShpToDataSourceMapper;
import com.dji.sample.patches.model.entity.PatchesEntity;
import com.dji.sample.patches.service.ShpToDataSourceService;
import com.dji.sample.patches.utils.FormatConversionUtil;
import com.dji.sample.patches.utils.MultipartFileTOFileUtil;
import com.dji.sample.patches.utils.ShapeFileUtil;
import org.springframework.beans.factory.annotation.Autowired;
@@ -12,30 +15,34 @@
import java.util.List;
import java.util.UUID;
import static org.locationtech.jts.io.WKTConstants.POLYGON;
@Service
public class ShpToDataSourceServiceImpl implements ShpToDataSourceService {
    @Autowired
    private ShpToDataSourceMapper mapper;
    private int createTime=0;
    private int updateTime=0;
    private int createTime = 0;
    private int updateTime = 0;
    String head = POLYGON;
    String json;
    private String bsm;
      public void insertGeo(MultipartFile file) throws IOException {
          ShapeFileUtil shapeFileUtil=new ShapeFileUtil();
          MultipartFileTOFileUtil multipartFileTOFileUtil = new MultipartFileTOFileUtil();
          File file1= multipartFileTOFileUtil.multipartFile2File(file);
          List<String> s=shapeFileUtil.shpToGeoJson(file1);
          String[] arr=new String[10];
          String str=s.toString();
          String ses=str.substring(0, str.length()-3);
          String[] arr1=ses.split("]],");
          for (int i = 0; i < arr1.length; i++) {
              bsm=UUID.randomUUID().toString()+1;
              String json= arr1[i].substring(3);
              arr[i]=json;
              mapper.insertJson(json,bsm,createTime,updateTime);
          }
      }
    public void insertGeo(MultipartFile file) throws IOException {
        PatchesEntity patches = new PatchesEntity();
        MultipartFileTOFileUtil multipartFileTOFileUtil = new MultipartFileTOFileUtil();
        File file1 = multipartFileTOFileUtil.multipartFile2File(file);
        List<String> s = ShapeFileUtil.shpToGeoJson(file1);
        String[] arr1 = FormatConversionUtil.formatConversion(s);
        for (int i = 0; i < arr1.length; i++) {
            String temp = arr1[i].trim();
            temp = FormatConversionUtil.modifySpacesAndCommas(temp);
            json = head + temp;
            patches.setBsm(UUID.randomUUID().toString());
            patches.setCreateTime(createTime);
            patches.setUpdateTime(updateTime);
            patches.setDkfw(json);
            mapper.insert(patches);
        }
    }
}
src/main/resources/application-dev.yml
@@ -4,7 +4,7 @@
    url: jdbc:mysql://182.108.40.114:3308/drone_zt_test?useSSL=false&allowPublicKeyRetrieval=true
    username: root
    password: yshb@123
#    url: jdbc:mysql://192.168.2.104:3306/drone_test?useSSL=false&allowPublicKeyRetrieval=true
#    url: jdbc:mysql://localhost:3306/drone_test?useSSL=false&allowPublicKeyRetrieval=true
#    username: root
#    password: 123456