From 30304784e82d4bba24121328da8eb8490aec4f4f Mon Sep 17 00:00:00 2001
From: hjg <hjg@123.com>
Date: 星期二, 09 七月 2024 18:05:21 +0800
Subject: [PATCH] 更改进厂为待装

---
 JavaSource/com/mandi/webservice/service/impl/FdXSTDService.java |  126 ++++++++++++++++++++++++++++++++---------
 1 files changed, 98 insertions(+), 28 deletions(-)

diff --git a/JavaSource/com/mandi/webservice/service/impl/FdXSTDService.java b/JavaSource/com/mandi/webservice/service/impl/FdXSTDService.java
index ab42c4e..83f1a1f 100644
--- a/JavaSource/com/mandi/webservice/service/impl/FdXSTDService.java
+++ b/JavaSource/com/mandi/webservice/service/impl/FdXSTDService.java
@@ -67,7 +67,7 @@
 
 	public static Boolean refreshMsLedLock = false;
 	public static Boolean refreshYrLedLock = false;
-
+	public static Boolean refreshKjLedLock = false;
 	@Override
 	@Transactional(rollbackFor=Exception.class)
 	public ObjectResult<Boolean> saveFd_xstd(String dataArr) throws Exception {
@@ -437,10 +437,10 @@
 				return prr;
 			}
 		} catch (Exception e) {
-			// TODO: handle exception
 		}
 
 		String currPch="";// 褰撳墠鎵规鍙�
+		List<String> pchList = new ArrayList<>();
 		//绗竴娆℃坊鍔犺鍗歌褰曞彂閫佽杞︿俊鎭�
 		int sfzc=this.fbper.getbsitembyNo(fdb.getBsNo());
 		if(sfzc<=0) {
@@ -460,7 +460,7 @@
 			String tdmx_pch = jo.get("tdmx_pch").getAsString();
 			tdmxPchList.add(tdmx_pch);
 		}
-		/*if("08".equals(fdb.getSdepartNo())) { // 鍙槸涔夌憺鍘傚尯鏈夋晥
+		if("08".equals(fdb.getSdepartNo())) { // 鍙槸涔夌憺鍘傚尯鏈夋晥
 			// 妫�鏌ユ槸鍚﹀綋鍓嶅尯鍩熷凡缁忔帓闃�
 			Map paramMap = new HashMap();
 			paramMap.put("vehicleId", vehicleId);
@@ -472,7 +472,7 @@
 				prr.setErrmsg(jsonObject.get("errmsg").getAsString());
 				return prr;
 			}
-		}*/
+		}
 		for (JsonElement je : dataArr) {
 			JsonObject jo=je.getAsJsonObject();
 			String tdmx_pch = jo.get("tdmx_pch").getAsString();
@@ -582,6 +582,7 @@
 			remp.put("tdmx_tdfl",tdmx.getTdmx_tdfl());
 			relist.add(remp);
 			currPch  = tdmx.getTdmx_pch();
+			pchList.add(tdmx.getTdmx_pch());
 		}
 
 		if(grossNum>0) {
@@ -607,12 +608,25 @@
 
 		 // 姝ゅ寮傛瑙﹀彂涓�涓嬫槑鏅熷彂杞�
 		if("06".equals(fdb.getSdepartNo())) {
-			final String cph = currPch;
+			final String pch = currPch;
 			final String finalVehicleId = vehicleId;
+			ThreadPoolUtil.getInstance().execute(()->{
+				Map paramMap = new HashMap();
+				paramMap.put("vehicleId", finalVehicleId);
+				paramMap.put("tdmxPchList", tdmxPchList);
+				String jsonStr = Jacksonmethod.tojson(paramMap, false);
+				JsonObject jsonObject = Wxhtmethod.postJsonStr(Contants.ms_DoScanUrl, jsonStr);
+				if (jsonObject.get("code").getAsInt() != 0) {
+					prr.setCode(1);
+					prr.setErrmsg(jsonObject.get("errmsg").getAsString());
+					// return prr;
+				}
+			});
+			// 寤惰繜1.5绉掓墽琛岋紝淇濊瘉鏁版嵁鎵ц瀹屼簡
 			ThreadPoolUtil.getInstance().execute(()->{
 				synchronized (FdXSTDService.refreshMsLedLock) {
 					if (FdXSTDService.refreshMsLedLock) { // 绯荤粺绻佸繖
-						log.info(finalVehicleId + "" + cph + "绯荤粺绻佸繖锛�");
+						log.info(finalVehicleId + "" + pch + "绯荤粺绻佸繖锛�");
 						return;
 					}
 				}
@@ -620,7 +634,7 @@
 					synchronized (FdXSTDService.refreshMsLedLock) {
 						FdXSTDService.refreshMsLedLock = true;
 					}
-					sendToMsLed(cph);
+					sendToMsLed(pch);
 				} catch (Exception e) {
 					log.error("鍑虹幇寮傚父锛�"+ e.getMessage(),e);
 				} finally {
@@ -628,16 +642,15 @@
 						FdXSTDService.refreshMsLedLock = false;
 					}
 				}
-			});
+			},1500);
 		}
 		if("08".equals(fdb.getSdepartNo())) {
 			final String cph = currPch;
 			ThreadPoolUtil.getInstance().execute(()->{
-
-				Map scanCodeParamMap = new HashMap();
+				// 杩欎釜鍦版柟涓嶅啀璇锋眰
+				/*Map scanCodeParamMap = new HashMap();
 				scanCodeParamMap.put("pch",cph);
-				Wxhtmethod.post(Contants.yr_scanCodeNoticeUrl, scanCodeParamMap);
-
+				Wxhtmethod.post(Contants.yr_scanCodeNoticeUrl, scanCodeParamMap);*/
 				try {
 					synchronized (FdXSTDService.refreshYrLedLock) {
 						if (FdXSTDService.refreshYrLedLock) { // 绯荤粺绻佸繖
@@ -654,6 +667,25 @@
 					}
 				}
 			});
+		} else if("04".equals(fdb.getSdepartNo())) { // 绉戞妧
+			final String cph = currPch;
+			ThreadPoolUtil.getInstance().execute(()->{
+				try {
+					synchronized (FdXSTDService.refreshKjLedLock) {
+						if (FdXSTDService.refreshKjLedLock) { // 绯荤粺绻佸繖
+							return  ;
+						}
+						FdXSTDService.refreshKjLedLock = true;
+					}
+					sendToKjLed(cph);
+				} catch (Exception e) {
+					log.error(e);
+				} finally {
+					synchronized (FdXSTDService.refreshKjLedLock) {
+						FdXSTDService.refreshKjLedLock = false;
+					}
+				}
+			});
 		}
 		prr.setCode(0);
 		prr.setErrmsg("瑁呰溅鎿嶄綔鎴愬姛锛�");
@@ -662,13 +694,18 @@
 	}
 
 	/**
-	 *
+	 *  鎸埌涓�鍗¢��
 	 * @param currPch 褰撳墠鎵规鍙�
 	 */
 	public void sendToMsLed(String currPch){
 		//A鍖�  76-86 +  99-1
 		//B鍖�  14-33 +  99-2
 		//C鍖�  53-67 +  99-3
+		// 2024骞存敼
+		//A鍖�  73-88 +  99-1 +  40-45
+		//B鍖�  14-27 +  99-2 +  46-49
+		//C鍖�  50-65 +  99-3
+		//D鍖�  28-39 +	69-72	+ 89-98
 		log.info("LED-ABC褰撳墠鎵爜鎵规鍙凤細" + currPch);
 		List<Map> totalList =  tdmxper.getHwList("06"); // 鑾峰彇鏄庢櫉鎵�鏈夊湪鍔炰笟鍔″崟鐨勪俊鎭�
 		log.info("LED-ABC鑾峰彇淇℃伅鏉℃暟锛�" + totalList.size());
@@ -692,16 +729,18 @@
 		Map speakParam = new HashMap(1);
 		for (Map.Entry<String, List<Map>> entry : ywbhListMap.entrySet()) {
 			// 閬嶅巻姣忎釜涓氬姟鍗曠殑
-			// 褰撳墠瑁呰溅A銆丅銆丆鍖�
-			boolean currA = false,currB = false, currC = false;
+			// 褰撳墠瑁呰溅A銆丅銆丆鍖�; D鍖哄彧鍙備笌璁板綍锛屼笉鍙備笌LED鏄剧ず鍜岃瑷�鎾姤
+			boolean currA = false,currB = false, currC = false, currD = false;
 			boolean hasZcwc = false; // 淇濊瘉宸茬粡瀹屾垚浜�
 			String ywhb = entry.getKey();
 			List<Map> vehicleIdTotalList = entry.getValue();
-			Map<String, Integer> totalAbcMap = new HashMap(3); // 鎬昏淇℃伅
+			// 鎬昏淇℃伅
+			Map<String, Integer> totalAbcMap = new HashMap(3);
 			totalAbcMap.put("A", 0);
 			totalAbcMap.put("B", 0);
 			totalAbcMap.put("C", 0);
-			Map<String, Integer> abcMap = new HashMap(3); // 宸茶淇℃伅
+			/* 宸茶淇℃伅 */
+			Map<String, Integer> abcMap = new HashMap(3);
 			abcMap.put("A", 0);
 			abcMap.put("B", 0);
 			abcMap.put("C", 0);
@@ -714,32 +753,36 @@
 				String hh = hw.replaceAll("\\-.*","");
 				hh = hh.substring(hh.length()-2); // 鍙栨渶鍚庝袱浣�
 				int num = Integer.parseInt(hh);
-				if (num >= 76 && num <= 86 || hw.lastIndexOf("99-1") >= 0) { // A鍖�
+				if (num >= 73 && num <= 88 || hw.lastIndexOf("99-1") >= 0) { // A鍖�
 					totalAbcMap.put("A",totalAbcMap.get("A") + 1);
 					if (zcbz != null && zcbz == 1) { // 瑁呰溅瀹屾垚
 						abcMap.put("A", abcMap.get("A") + 1);
 						hasZcwc = true;
 					}
 					if(pch.equals(currPch)) {
-						currA = true; currB = false;currC =false;
+						currA = true; currB = false;currC =false;currD=false;
 					}
-				} else if (num >= 14 && num <= 33 || hw.lastIndexOf("99-2") >= 0) { // B鍖�
+				} else if (num >= 14 && num <= 27 || hw.lastIndexOf("99-2") >= 0) { // B鍖�
 					totalAbcMap.put("B", totalAbcMap.get("B") + 1);
 					if (zcbz != null && zcbz == 1) {
 						abcMap.put("B", abcMap.get("B") + 1);
 						hasZcwc = true;
 					}
 					if(pch.equals(currPch)) {
-						currA = false; currB = true;currC =false;
+						currA = false; currB = true;currC =false;currD=false;
 					}
-				} else if (num >= 53 && num <= 67 || hw.lastIndexOf("99-3") >= 0) { // C鍖�
+				} else if (num >= 50 && num <= 65 || hw.lastIndexOf("99-3") >= 0) { // C鍖�
 					totalAbcMap.put("C", totalAbcMap.get("C") + 1);
 					if (zcbz != null && zcbz == 1) {
 						abcMap.put("C", abcMap.get("C") + 1);
 						hasZcwc = true;
 					}
 					if(pch.equals(currPch)) {
-						currA = false; currB = false; currC =true;
+						currA = false; currB = false; currC =true; currD=false;
+					}
+				} else if(num>=28 && num<=39 ||	(num>=69 && num<=72) || (num>=89 && num<=98)) {
+					if(pch.equals(currPch)) {
+						currA = false; currB = false;currC =false;currD=true;
 					}
 				}
 			}
@@ -797,7 +840,7 @@
 	}
 
 	/**
-	 * 鍑嗗璇煶
+	 * 鍑嗗璇煶 锛屾尓鍒颁竴鍗¢��
 	 * @param cph 杞︾墝鍙�
 	 * @param total 褰撳墠鍖烘�绘暟
 	 * @param abcMap A銆丅銆丆涓簁ey鐨勫尯宸茶鏁扮洰
@@ -875,7 +918,7 @@
 			String strTitle="搴忓彿  杞﹀彿   瑁呰溅鍖�  鐘舵�乗r\n";
 			String strContent = "";
 			String contentFormatStr = "%s   %s  %s   %s\r\n";
-			List<Map> list = tdmxper.yRZcList("08");
+			List<Map> list = tdmxper.kjZcList("08");
 			int index = 1;
 			for (Map map : list) {
 				String numberplates = (String) map.get("numberplates"); // 杞︾墝鍙�
@@ -893,6 +936,32 @@
 			paramMap.put("strContent",strContent);
 			Wxhtmethod.post(Contants.yr_zcLedUrl + "/SendLED",paramMap);
 			log.info("yr_zcLedUrl: " + Contants.yr_zcLedUrl + ";title:" + strTitle + ",content:" + strContent);
+	}
+	@Override
+	public void sendToKjLed(String currPch) {
+		// 鐘舵�� 涓�纾呭悗锛屽緟瑁咃紱PDA鎵爜 鍦ㄨ锛� 浜屾杩囩鍚庢秷澶�
+		// 瑁呰溅鍖� 涓や釜姹夊瓧鍔犱袱涓嫳鏂囨垨鏁板瓧
+		String strTitle="搴忓彿  杞﹀彿   瑁呰溅鍖�  鐘舵�乗r\n";
+		String strContent = "";
+		String contentFormatStr = "%s   %s  %s   %s\r\n";
+		List<Map> list = tdmxper.kjZcList("04");
+		int index = 1;
+		for (Map map : list) {
+			String numberplates = (String) map.get("numberplates"); // 杞︾墝鍙�
+			String zcWz = (String) map.get("zcWz"); // 瑁呰溅浣嶇疆
+			if(StringUtils.isNotBlank(zcWz)) {
+				zcWz = zcWz.substring(0,4);
+			} else { // 绌烘槸6涓綅缃�
+				zcWz = "      ";
+			}
+			String zcStatus = (String) map.get("zcStatus"); // 瑁呰溅浣嶇疆 鍦ㄥ姙/寰呭姙
+			strContent += String.format(contentFormatStr, fillWithZero(index++), numberplates, zcWz, zcStatus);
+		}
+		Map paramMap = new HashMap();
+		paramMap.put("strTitle",strTitle);
+		paramMap.put("strContent",strContent);
+		String re = Wxhtmethod.post(Contants.kj_zcLedUrl + "/SendLED",paramMap);
+		log.info("鍥炲锛�" + re +";kj_zcLedUrl: " + Contants.kj_zcLedUrl + ";title:" + strTitle + ",content:" + strContent);
 	}
 
 	String fillWithZero(int str){
@@ -952,7 +1021,6 @@
 				return orr;
 			}
 		} catch (Exception e) {
-			// TODO: handle exception
 		}
 //		Fd_Bsheet nr=this.fbper.getbyVehicleId(vehicleId, Serviceenum.鍦ㄥ姙);
 //		if(nr==null){
@@ -1013,7 +1081,7 @@
 	}
 
 	@Override
-	public ObjectResult<Map<String, Object>> getcInfo(String cardID) {
+	public ObjectResult<Map<String, Object>> getcInfo(String cardID,boolean needRecord) {
 		ObjectResult<Map<String, Object>> orr=new ObjectResult<Map<String,Object>>();
 		Map<String, Object> rem=new HashMap<String, Object>();
 		Map<String, Object> mp=this.yktper.getcardinuse(cardID);
@@ -1129,7 +1197,9 @@
 			}else {
 				mr.put("firstzxhtime", new Date());
 			}
-			this.bsper.updateTaskTime(mr);
+			if(needRecord) { // 涓簍rue 鍒欐洿鏂扮涓�娆℃壂鍗℃椂闂达紝鍚﹀垯涓嶈褰�
+				this.bsper.updateTaskTime(mr);
+			}
 		}else {
 			orr.setCode(1);
 			orr.setErrmsg("鏈壘鍒拌杞﹁褰�");

--
Gitblit v1.9.3