Browse Source

同步

master_tdsql
ljf 12 months ago
parent
commit
708d988ac1
  1. 8
      shuili-admin/pom.xml
  2. 82
      shuili-admin/src/main/java/com/kms/web/synchronous/YgSynchronous.java
  3. 1
      shuili-system/src/main/java/com/kms/yg/dd/domain/AttDiscBase.java
  4. 6
      shuili-system/src/main/java/com/kms/yg/xgxd/domain/AttDpdsBase.java

8
shuili-admin/pom.xml

@ -87,6 +87,12 @@
<artifactId>plexus-component-annotations</artifactId> <artifactId>plexus-component-annotations</artifactId>
<version>1.6</version> <version>1.6</version>
</dependency> </dependency>
<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.0.0</version>
</dependency>
</dependencies> </dependencies>
<build> <build>
@ -119,7 +125,7 @@
<plugin> <plugin>
<artifactId>maven-assembly-plugin</artifactId> <artifactId>maven-assembly-plugin</artifactId>
<version>2.4</version> <version>3.0.0</version>
<configuration> <configuration>
<finalName>${project.name}</finalName> <finalName>${project.name}</finalName>
<appendAssemblyId>false</appendAssemblyId> <!-- 包名不含assemblyId --> <appendAssemblyId>false</appendAssemblyId> <!-- 包名不含assemblyId -->

82
shuili-admin/src/main/java/com/kms/web/synchronous/YgSynchronous.java

@ -1,6 +1,7 @@
package com.kms.web.synchronous; package com.kms.web.synchronous;
import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import cn.hutool.http.HttpRequest; import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse; import cn.hutool.http.HttpResponse;
@ -18,6 +19,8 @@ import com.kms.yg.sk.service.AttResBaseService;
import com.kms.yg.sk.service.AttResRsppService; import com.kms.yg.sk.service.AttResRsppService;
import com.kms.yg.xgxd.domain.AttDpdsBase; import com.kms.yg.xgxd.domain.AttDpdsBase;
import com.kms.yg.xgxd.service.AttDpdsBaseService; import com.kms.yg.xgxd.service.AttDpdsBaseService;
import io.swagger.models.auth.In;
import lombok.Data;
import org.apache.commons.lang.SerializationUtils; import org.apache.commons.lang.SerializationUtils;
import org.checkerframework.checker.units.qual.A; import org.checkerframework.checker.units.qual.A;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -29,12 +32,11 @@ import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.concurrent.CopyOnWriteArrayList; import java.util.concurrent.*;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@Configuration @Configuration
@ -81,39 +83,59 @@ public class YgSynchronous {
static final String xgxdsj = "http://19.25.35.205:31190/ZHSL_ZY/jck/yggx/dws_att_dpds_base" ; static final String xgxdsj = "http://19.25.35.205:31190/ZHSL_ZY/jck/yggx/dws_att_dpds_base" ;
//流域基本数据 //流域基本数据
static final String llsj = "http://19.25.35.205:31190/ZHSL_ZY/jck/ytjgx/dws_att_bas_base" ; static final String llsj = "http://19.25.35.205:31190/ZHSL_ZY/jck/ytjgx/dws_att_bas_base" ;
//
/** /**
* 同步 * 同步
*/ */
@GetMapping("sktz1") // @GetMapping("sktz1")
public void synchronous(){ // public void synchronous() throws ExecutionException, InterruptedException {
int pageNum = 1; // int pageNum = 1;
int pageSize = 1000; // int pageSize = 1000;
Boolean f = true; // Boolean f = true;
while (f) { // HashMap<String, Object> hashMap = new HashMap<>();
String s = sendRequest(ddsj + "?pageNum=" + pageNum + "&pageSize=" + pageSize); // int i = 1;
String data = JSONObject.parseObject(s).getString("data"); // while (f) {
List<AttDiscBase> attResRspps = JSONObject.parseArray(data, AttDiscBase.class); // String s = sendRequest(ddsj + "?pageNum=" + pageNum + "&pageSize=" + pageSize);
if (attResRspps.size()<pageSize){ // String data = JSONObject.parseObject(s).getString("data");
f = false; // List<AttDiscBase> attResRspps = JSONObject.parseArray(data, AttDiscBase.class);
}else { // if(attResRspps.size()<pageSize){
pageNum++; // f = false;
// }
// for (AttDiscBase attDiscBase : attResRspps) {
// hashMap.put(attDiscBase.getDiscCode(),i++);
// attDiscBase.preInsert();
// attDiscBase.setId(attDiscBase.getDiscCode());
// attDiscBaseService.save(attDiscBase);
// }
//// CopyOnWriteArrayList<AttDiscBase> attDiscBases = CollectionUtil.newCopyOnWriteArrayList(attResRspps);
//// executorService.execute(new sktz(attResRspps));
// pageNum++;
// }
// }
@Data
class sktz implements Runnable{
private List<AttDiscBase> list;
public sktz(List<AttDiscBase> list){
this.list = list;
} }
Runnable runnable = new Runnable() {
@Override @Override
public void run() { public void run() {
List<AttDiscBase> attDiscBases = new ArrayList(); int a = 1;
synchronized (attResRspps){ for (AttDiscBase attDiscBase : list) {
attDiscBases = CollectionUtil.newCopyOnWriteArrayList(attResRspps); attDiscBase.preInsert();
} // attResRspp.setId(attResRspp.getDiscCode());
attDiscBases.forEach(attResRspp -> { boolean save = attDiscBaseService.save(attDiscBase);
attResRspp.preInsert(); if(save){
attResRspp.setId(attResRspp.getDiscCode()); System.out.println(a++);
attDiscBaseService.save(attResRspp); if(a>=1000){
}); System.out.println("批量处理完成1000条------------------------------------");
} }
} }
};
executorService.execute(runnable);
} }
} }
@ -249,4 +271,6 @@ public class YgSynchronous {
attBasBaseService.saveOrUpdate(attResRspp); attBasBaseService.saveOrUpdate(attResRspp);
}); });
} }
} }

1
shuili-system/src/main/java/com/kms/yg/dd/domain/AttDiscBase.java

@ -7,6 +7,7 @@ import com.shuili.common.annotation.Excel;
import com.shuili.common.core.domain.BaseEntity; import com.shuili.common.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
/** /**

6
shuili-system/src/main/java/com/kms/yg/xgxd/domain/AttDpdsBase.java

@ -67,17 +67,17 @@ public class AttDpdsBase extends BaseEntity
/** 出险数量 */ /** 出险数量 */
@Excel(name = "出险数量") @Excel(name = "出险数量")
@ApiModelProperty("出险数量") @ApiModelProperty("出险数量")
private Long dangNum; private String dangNum;
/** $column.columnComment */ /** $column.columnComment */
@Excel(name = "出险数量") @Excel(name = "出险数量")
@ApiModelProperty("出险数量") @ApiModelProperty("出险数量")
private Long dpdsStarNum; private String dpdsStarNum;
/** 桩号 */ /** 桩号 */
@Excel(name = "桩号") @Excel(name = "桩号")
@ApiModelProperty("桩号") @ApiModelProperty("桩号")
private Long dpdsEndNum; private String dpdsEndNum;
/** 长度 */ /** 长度 */
@Excel(name = "长度") @Excel(name = "长度")

Loading…
Cancel
Save