|
@@ -5,17 +5,12 @@ import com.alibaba.fastjson.JSONObject;
|
|
|
import com.huimv.production.autoGetData.entity.IndexParameter;
|
|
|
import com.huimv.production.autoGetData.repo.IndexParameterRepository;
|
|
|
import com.huimv.production.autoGetData.service.IAutoGetErpData;
|
|
|
-import lombok.extern.slf4j.Slf4j;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
|
-import org.springframework.data.domain.Example;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.web.client.RestTemplate;
|
|
|
|
|
|
-import java.util.Date;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
-import java.util.Optional;
|
|
|
+import java.util.*;
|
|
|
|
|
|
/**
|
|
|
* @Project : huimv.shiwan
|
|
@@ -26,7 +21,6 @@ import java.util.Optional;
|
|
|
* @Create : 2020-12-25
|
|
|
**/
|
|
|
@Service
|
|
|
-@Slf4j
|
|
|
public class AutoGetErpDataImpl implements IAutoGetErpData {
|
|
|
// 查询开始日期
|
|
|
@Value("${erp.datasource.startDate}")
|
|
@@ -40,7 +34,6 @@ public class AutoGetErpDataImpl implements IAutoGetErpData {
|
|
|
private String apiPort;
|
|
|
@Value("${erp.datasource.serviceName}")
|
|
|
private String serviceName;
|
|
|
- private String filterFarm = "海盐";
|
|
|
|
|
|
@Autowired
|
|
|
private RestTemplate template;
|
|
@@ -52,139 +45,258 @@ public class AutoGetErpDataImpl implements IAutoGetErpData {
|
|
|
public void getPsy() {
|
|
|
String token = getToken();
|
|
|
String servicePath = apiIp + apiPort + serviceName;
|
|
|
- System.out.println("servicePath>>" + servicePath);
|
|
|
- JSONObject jsonObject = template.getForObject(apiIp + apiPort + serviceName + "/getPsy?startDate=" + startDate + "&endDate=" + endDate + "&accessToken=" + token
|
|
|
- , JSONObject.class);
|
|
|
+ System.out.println("servicePath>>"+servicePath);
|
|
|
+ JSONObject jsonObject = template.getForObject(apiIp + apiPort + serviceName + "/getPsy?startDate="+startDate+"&endDate="+endDate+"&accessToken="+token
|
|
|
+ ,JSONObject.class );
|
|
|
String data = jsonObject.getString("data");
|
|
|
- if (data == null) {
|
|
|
+ if (data == null){
|
|
|
return;
|
|
|
}
|
|
|
IndexParameter indexParameter = parameterRepository.findById(7).get();
|
|
|
indexParameter.setUpdateTime(new Date());
|
|
|
//TODO 将数据加入到数据库
|
|
|
- indexParameter.setData(data);
|
|
|
+ indexParameter.setData("0");
|
|
|
+ System.out.println("PSY------->"+data);
|
|
|
|
|
|
parameterRepository.save(indexParameter);
|
|
|
+
|
|
|
+
|
|
|
}
|
|
|
|
|
|
//返情率
|
|
|
@Override
|
|
|
public void getReEstrusRate() {
|
|
|
String token = getToken();
|
|
|
- JSONObject jsonObject = template.getForObject(apiIp + apiPort + serviceName + "/getReEstrusRate?startDate=" + startDate + "&endDate=" + endDate + "&accessToken=" + token
|
|
|
- , JSONObject.class);
|
|
|
+ JSONObject jsonObject = template.getForObject(apiIp + apiPort + serviceName + "/getReEstrusRate?startDate="+startDate+"&endDate="+endDate+"&accessToken="+token
|
|
|
+ ,JSONObject.class );
|
|
|
String data = jsonObject.getString("data");
|
|
|
- if (data == null) {
|
|
|
+ if (data == null){
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- String reestrus_rate = "0.00000";
|
|
|
- List<Map<String, String>> list = (List<Map<String, String>>) JSON.parse(data);
|
|
|
+ String reestrus_rate ="0.00000";
|
|
|
+ List<Map<String,String>> list = (List<Map<String,String>> ) JSON.parse(data);
|
|
|
for (Map<String, String> stringStringMap : list) {
|
|
|
for (String s : stringStringMap.keySet()) {
|
|
|
String farm = stringStringMap.get(s);
|
|
|
- if (farm != null && farm.contains("海盐")) {
|
|
|
- reestrus_rate = stringStringMap.get("reestrus_rate");
|
|
|
+ if (farm != null && farm.contains("海盐")){
|
|
|
+ reestrus_rate = stringStringMap.get("reestrus_rate");
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
IndexParameter indexParameter = parameterRepository.findById(9).get();
|
|
|
indexParameter.setData(reestrus_rate);
|
|
|
indexParameter.setUpdateTime(new Date());
|
|
|
+
|
|
|
+ System.out.println("返情率------->"+data);
|
|
|
parameterRepository.save(indexParameter);
|
|
|
|
|
|
}
|
|
|
|
|
|
+ //获取分娩率
|
|
|
@Override
|
|
|
public void getParturitionRate() {
|
|
|
+ String token = getToken();
|
|
|
+ JSONObject jsonObject = template.getForObject(apiIp + apiPort + serviceName +"/getParturitionRate?startDate="+startDate+"&endDate="+endDate+"&accessToken="+token
|
|
|
+ ,JSONObject.class );
|
|
|
+ String data = jsonObject.getString("data");
|
|
|
+ if (data == null){
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ String parturition_rate ="0.00000";
|
|
|
+ List<Map<String,String>> list = (List<Map<String,String>> ) JSON.parse(data);
|
|
|
+ for (Map<String, String> stringStringMap : list) {
|
|
|
+ for (String s : stringStringMap.keySet()) {
|
|
|
+ String farm = stringStringMap.get(s);
|
|
|
+ if (farm != null && farm.contains("海盐")){
|
|
|
+ parturition_rate = stringStringMap.get("parturition_rate");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ IndexParameter indexParameter = parameterRepository.findById(12).get();
|
|
|
+ indexParameter.setData(parturition_rate);
|
|
|
+ indexParameter.setUpdateTime(new Date());
|
|
|
+
|
|
|
+
|
|
|
+ System.out.println("分娩率------->"+data);
|
|
|
+ parameterRepository.save(indexParameter);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public List getStorage() {
|
|
|
+ String token = getToken();
|
|
|
+ JSONObject jsonObject = template.getForObject(apiIp + apiPort + serviceName +"/getStorage?startDate="+startDate+"&endDate="+endDate+"&accessToken="+token
|
|
|
+ ,JSONObject.class );
|
|
|
+ String data = jsonObject.getString("data");
|
|
|
+ if (data == null){
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ List<Map<String,String>> list = (List<Map<String,String>> ) JSON.parse(data);JSON.parse(data);
|
|
|
+ List list1 = new ArrayList();
|
|
|
+ for (Map<String, String> stringStringMap : list) {
|
|
|
+ for (String s : stringStringMap.keySet()) {
|
|
|
+ String farm = stringStringMap.get(s);
|
|
|
+ if (farm != null && farm.contains("海盐")){
|
|
|
+ Map map = new HashMap();
|
|
|
+ map.put("name",stringStringMap.get("name"));
|
|
|
+ map.put("quantity",stringStringMap.get("quantity"));
|
|
|
+ list1.add(map);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return list1;
|
|
|
+ }
|
|
|
+
|
|
|
+ //获取均产仔数,仔猪存活率
|
|
|
+ @Override
|
|
|
+ public void getPigletInfo() {
|
|
|
+ /* String token = getToken();
|
|
|
+ JSONObject jsonObject = template.getForObject(apiIp + apiPort + serviceName +"/getPigletInfo?startDate="+startDate+"&endDate="+endDate+"&accessToken="+token
|
|
|
+ ,JSONObject.class );
|
|
|
+ String data = jsonObject.getString("data");
|
|
|
+ if (data == null){
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ //TODO 未完成
|
|
|
+ String parturition_rate ="0.00000";
|
|
|
+ List<Map<String,String>> list = (List<Map<String,String>> ) JSON.parse(data);
|
|
|
+ for (Map<String, String> stringStringMap : list) {
|
|
|
+ for (String s : stringStringMap.keySet()) {
|
|
|
+ String farm = stringStringMap.get(s);
|
|
|
+ if (farm != null && farm.contains("海盐")){
|
|
|
+ parturition_rate = stringStringMap.get("parturition_rate");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ IndexParameter indexParameter = parameterRepository.findById(12).get();
|
|
|
+ indexParameter.setData(parturition_rate);
|
|
|
+ indexParameter.setUpdateTime(new Date());
|
|
|
+ parameterRepository.save(indexParameter);*/
|
|
|
+ }
|
|
|
|
|
|
+ //配种数量
|
|
|
+ @Override
|
|
|
+ public void getMateQuantity() {
|
|
|
+ String token = getToken();
|
|
|
+ JSONObject jsonObject = template.getForObject(apiIp + apiPort + serviceName +"/getMateQuantity?startDate="+startDate+"&endDate="+endDate+"&accessToken="+token
|
|
|
+ ,JSONObject.class );
|
|
|
+ String data = jsonObject.getString("data");
|
|
|
+ if (data == null){
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ String mate_quantity ="0";
|
|
|
+ List<Map<String,String>> list = (List<Map<String,String>> ) JSON.parse(data);
|
|
|
+ for (Map<String, String> stringStringMap : list) {
|
|
|
+ for (String s : stringStringMap.keySet()) {
|
|
|
+ String farm = stringStringMap.get(s);
|
|
|
+ if (farm != null && farm.contains("海盐")){
|
|
|
+ mate_quantity = stringStringMap.get("mate_quantity");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ IndexParameter indexParameter = parameterRepository.findById(10).get();
|
|
|
+ indexParameter.setData(mate_quantity);
|
|
|
+ indexParameter.setUpdateTime(new Date());
|
|
|
+
|
|
|
+ System.out.println("配种数------->"+data);
|
|
|
+
|
|
|
+ parameterRepository.save(indexParameter);
|
|
|
}
|
|
|
|
|
|
- /**
|
|
|
- * @Method : getConceptionRate
|
|
|
- * @Description : 读取受胎率
|
|
|
- * @Params : []
|
|
|
- * @Return : void
|
|
|
- * @Author : ZhuoNing
|
|
|
- * @Date : 2021/5/17
|
|
|
- * @Time : 17:38
|
|
|
- */
|
|
|
+ //受胎率
|
|
|
@Override
|
|
|
public void getConceptionRate() {
|
|
|
String token = getToken();
|
|
|
- JSONObject jsonObject = template.getForObject(apiIp + apiPort + serviceName + "/getConceptionRate?startDate=" + startDate + "&endDate=" + endDate + "&accessToken=" + token
|
|
|
- , JSONObject.class);
|
|
|
+ JSONObject jsonObject = template.getForObject(apiIp + apiPort + serviceName +"/getConceptionRate?startDate="+startDate+"&endDate="+endDate+"&accessToken="+token
|
|
|
+ ,JSONObject.class );
|
|
|
String data = jsonObject.getString("data");
|
|
|
- if (data == null) {
|
|
|
+ if (data == null){
|
|
|
return;
|
|
|
}
|
|
|
- log.info("filterFarm: " + filterFarm);
|
|
|
- // 过滤海盐数据
|
|
|
- String conceptionRate = "0.00";
|
|
|
- List<Map<String, String>> list = (List<Map<String, String>>) JSON.parse(data);
|
|
|
+ String conception_rate ="0";
|
|
|
+ List<Map<String,String>> list = (List<Map<String,String>> ) JSON.parse(data);
|
|
|
for (Map<String, String> stringStringMap : list) {
|
|
|
for (String s : stringStringMap.keySet()) {
|
|
|
String farm = stringStringMap.get(s);
|
|
|
- if (farm != null && farm.contains(filterFarm)) {
|
|
|
- conceptionRate = stringStringMap.get("conception_rate");
|
|
|
+ if (farm != null && farm.contains("海盐")){
|
|
|
+ conception_rate = stringStringMap.get("conception_rate");
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- log.info("返回结果 conceptionRate: " + conceptionRate);
|
|
|
- IndexParameter queryIndexParameter = new IndexParameter();
|
|
|
- queryIndexParameter.setName("受胎率");
|
|
|
- Example<IndexParameter> example = Example.of(queryIndexParameter);
|
|
|
- Optional<IndexParameter> indexParameterOptional = parameterRepository.findOne(example);
|
|
|
- log.info("isPresent=" + indexParameterOptional.isPresent());
|
|
|
- if (indexParameterOptional.isPresent()) {
|
|
|
- // 更新数据
|
|
|
- IndexParameter indexParameterData = indexParameterOptional.get();
|
|
|
- IndexParameter indexParameter = new IndexParameter();
|
|
|
- indexParameter.setId(indexParameterData.getId());
|
|
|
- indexParameter.setName("受胎率");
|
|
|
- indexParameter.setData(conceptionRate);
|
|
|
- indexParameter.setCreateTime(indexParameterData.getCreateTime());
|
|
|
- indexParameter.setUpdateTime(indexParameterData.getUpdateTime());
|
|
|
- indexParameter.setCheckParameter(indexParameterData.getCheckParameter());
|
|
|
- parameterRepository.save(indexParameter);
|
|
|
- } else {
|
|
|
- // 新建新数据
|
|
|
- IndexParameter indexParameter = new IndexParameter();
|
|
|
- indexParameter.setName("受胎率");
|
|
|
- indexParameter.setData(conceptionRate);
|
|
|
- indexParameter.setCheckParameter(false);
|
|
|
- parameterRepository.save(indexParameter);
|
|
|
+ IndexParameter indexParameter = parameterRepository.findById(11).get();
|
|
|
+ indexParameter.setData(conception_rate);
|
|
|
+ indexParameter.setUpdateTime(new Date());
|
|
|
+
|
|
|
+ System.out.println("受胎率------->"+data);
|
|
|
+ parameterRepository.save(indexParameter);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void getAllStorage() {
|
|
|
+ String token = getToken();
|
|
|
+ JSONObject jsonObject = template.getForObject(apiIp + apiPort + serviceName +"/getAllStorage?startDate="+startDate+"&endDate="+endDate+"&accessToken="+token
|
|
|
+ ,JSONObject.class );
|
|
|
+ String data = jsonObject.getString("data");
|
|
|
+ if (data == null){
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ List<Map<String,String>> list = (List<Map<String,String>> ) JSON.parse(data);
|
|
|
+ String total ="0";
|
|
|
+ String sow_quantity="0";
|
|
|
+
|
|
|
+ for (Map<String, String> stringStringMap : list) {
|
|
|
+ for (String s : stringStringMap.keySet()) {
|
|
|
+ String farm = stringStringMap.get(s);
|
|
|
+ if (farm != null && farm.contains("海盐")){
|
|
|
+ total = stringStringMap.get("total");
|
|
|
+ sow_quantity = stringStringMap.get("sow_quantity");
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
+ IndexParameter indexParameter = parameterRepository.findById(2).get();
|
|
|
+ indexParameter.setData(total);
|
|
|
+ indexParameter.setUpdateTime(new Date());
|
|
|
+ parameterRepository.save(indexParameter);
|
|
|
+
|
|
|
+ IndexParameter indexParameter1 = parameterRepository.findById(3).get();
|
|
|
+ indexParameter1.setData(sow_quantity);
|
|
|
+ indexParameter1.setUpdateTime(new Date());
|
|
|
+ parameterRepository.save(indexParameter);
|
|
|
}
|
|
|
|
|
|
- private String getToken() {
|
|
|
+
|
|
|
+ private String getToken(){
|
|
|
JSONObject token = template.getForObject("http://192.168.1.62:9100/token/getToken?userId=20210501×tamp=45546546454&random=1156&sign=7fa431325504e01e9fa87ed0e274c40c",
|
|
|
JSONObject.class);
|
|
|
return token.getString("accessToken");
|
|
|
+
|
|
|
}
|
|
|
|
|
|
|
|
|
- public static void main(String[] args) {
|
|
|
+
|
|
|
+ /* public static void main(String[] args) {
|
|
|
RestTemplate restTemplate = new RestTemplate();
|
|
|
|
|
|
|
|
|
JSONObject token1 = restTemplate.getForObject("http://192.168.1.62:9100/token/getToken?userId=20210501×tamp=45546546454&random=1156&sign=7fa431325504e01e9fa87ed0e274c40c",
|
|
|
JSONObject.class);
|
|
|
- String token = token1.getString("accessToken");
|
|
|
- JSONObject jsonObject = restTemplate.getForObject("http://192.168.1.62:9100/erpData/getReEstrusRate?startDate=2020.1.1&endDate=2021.12.31&accessToken=" + token
|
|
|
- , JSONObject.class);
|
|
|
+ String token = token1.getString("accessToken");
|
|
|
+ JSONObject jsonObject = restTemplate.getForObject("http://192.168.1.62:9100/erpData/getReEstrusRate?startDate=2020.1.1&endDate=2021.12.31&accessToken="+token
|
|
|
+ ,JSONObject.class );
|
|
|
String data = jsonObject.getString("data");
|
|
|
- String reestrus_rate = "0.00000";
|
|
|
- List<Map<String, String>> list = (List<Map<String, String>>) JSON.parse(data);
|
|
|
+ String reestrus_rate ="0.00000";
|
|
|
+ List<Map<String,String>> list = (List<Map<String,String>> ) JSON.parse(data);
|
|
|
for (Map<String, String> stringStringMap : list) {
|
|
|
for (String s : stringStringMap.keySet()) {
|
|
|
String farm = stringStringMap.get(s);
|
|
|
- if (farm != null && farm.contains("海盐")) {
|
|
|
- reestrus_rate = stringStringMap.get("reestrus_rate");
|
|
|
+ if (farm != null && farm.contains("海盐")){
|
|
|
+ reestrus_rate = stringStringMap.get("reestrus_rate");
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
- }
|
|
|
+
|
|
|
+ }*/
|
|
|
}
|