From 10e199f950f5c74b25e446433ceb51cffe675be4 Mon Sep 17 00:00:00 2001
From: Fixiaobai <fixiaobai@163.com>
Date: 星期一, 30 十月 2023 09:57:07 +0800
Subject: [PATCH] Changes

---
 mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/PartServiceImpl.java |   34 ++++++++++++++++++++++++++--------
 1 files changed, 26 insertions(+), 8 deletions(-)

diff --git a/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/PartServiceImpl.java b/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/PartServiceImpl.java
index 62a1689..e6ad84e 100644
--- a/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/PartServiceImpl.java
+++ b/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/PartServiceImpl.java
@@ -17,7 +17,6 @@
 package com.chinaztt.mes.basic.service.impl;
 
 import cn.hutool.core.collection.CollectionUtil;
-import cn.hutool.core.date.DateUtil;
 import cn.hutool.http.HttpRequest;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
@@ -33,6 +32,7 @@
 import com.chinaztt.mes.basic.service.PartService;
 import com.chinaztt.mes.basic.util.DictUtils;
 import com.chinaztt.mes.basic.util.PartUtils;
+import com.chinaztt.mes.basic.util.TransactionUtils;
 import com.chinaztt.mes.common.util.JsonUtil;
 import com.chinaztt.ztt.common.core.util.R;
 import com.chinaztt.ztt.common.security.util.SecurityUtils;
@@ -54,11 +54,15 @@
 import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.TransactionDefinition;
+import org.springframework.transaction.TransactionStatus;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.StringUtils;
 
 import java.io.IOException;
 import java.math.BigDecimal;
+import java.sql.Connection;
+import java.sql.PreparedStatement;
 import java.util.*;
 
 /**
@@ -77,7 +81,9 @@
 	private DiscoveryClient discoveryClient;
 	private Environment environment;
 	private RedisTemplate redisTemplate;
+	private TransactionUtils transactionUtils;
 	;
+
 
 	@Override
 	public void importPartExcel(List<PartData> list) {
@@ -369,9 +375,10 @@
 	}
 
 
-	@Transactional(rollbackFor = Exception.class)
 	@Override
-	public Long syncNewIfs(Date date) {
+	@Transactional(rollbackFor = Exception.class)
+	public Long syncNewIfs(String date) {
+		TransactionStatus transaction = transactionUtils.begin(TransactionDefinition.ISOLATION_READ_COMMITTED);
 		Map<String, String> dicmattype = dictUtils.getDicKey("material_type");
 		Map<String, String> dicunit = dictUtils.getDicKey("unit");
 		String key = "syncPart_lock" + SecurityUtils.getUser().getId();
@@ -379,16 +386,26 @@
 			throw new RuntimeException("鏈夊悓姝ヤ换鍔℃鍦ㄥ鐞�");
 		}
 		redisTemplate.opsForValue().set(key, 1, 1000 * 3600);
-		Map<String, Object>map=new HashMap<>();
-		map.put("MODIFY_DATE", DateUtil.format(date,"yyyy-MM-dd"));
 		List<Part>partList=new ArrayList<Part>();
+		Connection conn =null;
+		PreparedStatement pstmt =null;
 		try {
+			String url ="";
+			//鍒ゆ柇鏃ユ湡鏈夊惁
+			if (Objects.isNull(date)){
+				url = "http://192.168.20.47:8008/PurchService.ashx?contract=KJZS&contractKey=4ttDeLKNsZuhstjtROMcRE1USNFXKdFYE7lQ2p1m5Bo=&procedureName=QUERY_INVENTORY_PART_INFO_STD&userId=7632&inAttr={}";
+			}else {
+				Map<String, Object>map=new HashMap<>();
+				map.put("MODIFY_DATE", date);
+				url = "http://192.168.20.47:8008/PurchService.ashx?contract=KJZS&contractKey=4ttDeLKNsZuhstjtROMcRE1USNFXKdFYE7lQ2p1m5Bo=&procedureName=QUERY_INVENTORY_PART_INFO_STD&userId=7632&inAttr="+new ObjectMapper().writeValueAsString(map);
+			}
 			log.info("寮�濮嬫墽琛屽悓姝�==========銆�");
-			String url = "http://192.168.20.47:8008/PurchService.ashx?contract=ZTKJ&contractKey=4ttDeLKNsZuhstjtROMcRE1USNFXKdFYE7lQ2p1m5Bo=&procedureName=QUERY_INVENTORY_PART_INFO_STD&userId=7632&inAttr="+new ObjectMapper().writeValueAsString(map);
 			String body = HttpRequest.get(url).execute().body();
 			log.info("鎵ц鍚屾缁撴潫===========銆�");
 			Map<String, Object> mapResult = JsonUtil.jsonToPojo(body, Map.class);
 			List<Map<String, Object>> data = JsonUtil.jsonToPojo(JsonUtil.jsonToString(mapResult.get("INVENTORY_PART_INFO")), List.class);
+			System.out.println(data.size());
+			//data.forEach(System.out::println);
 			List<String>no=new ArrayList<String>();
 			data.forEach(l->{
 				Part part = new Part();
@@ -418,8 +435,8 @@
 				List<Part> selectList = baseMapper.selectList(queryWrapper);
 				//System.out.println(baseMapper.selectList(queryWrapper));
 				partList.removeIf(mainObj -> selectList.stream().anyMatch(subObj -> subObj.getPartNo().equals(mainObj.getPartNo())));
-				//System.out.println(partList);
-				partList.forEach(l -> {
+				System.out.println("杩囨护闀垮害=============================銆�"+partList.size());
+				partList.forEach(l->{
 					baseMapper.insert(l);
 				});
 			}
@@ -427,6 +444,7 @@
 			e.printStackTrace();
 			throw new RuntimeException(e.getMessage());
 		} finally {
+			//JDBCUtil.close(pstmt,conn);
 			redisTemplate.delete(key);
 		}
 		return (long) partList.size();

--
Gitblit v1.9.3