From 57fd04268409779c868b38d0507cca34f0641625 Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期一, 26 五月 2025 16:21:32 +0800
Subject: [PATCH] fixbug:在同一工程执行调度任务过程中领取任务造成大理片笼出片缺片的情况
---
hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/test/java/com/mes/CacheVerticalGlassModuleApplicationTest.java | 382 ++++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 322 insertions(+), 60 deletions(-)
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/test/java/com/mes/CacheVerticalGlassModuleApplicationTest.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/test/java/com/mes/CacheVerticalGlassModuleApplicationTest.java
index ae11d30..398e9a6 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/test/java/com/mes/CacheVerticalGlassModuleApplicationTest.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/test/java/com/mes/CacheVerticalGlassModuleApplicationTest.java
@@ -1,60 +1,322 @@
-package com.mes;
-
-import com.mes.bigstorage.service.BigStorageCageService;
-import com.mes.common.config.Const;
-import com.mes.job.PlcStorageCageTask;
-import lombok.extern.slf4j.Slf4j;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.junit4.SpringRunner;
-
-import java.util.Arrays;
-
-/**
- * @Author : zhoush
- * @Date: 2024/3/27 16:37
- * @Description:
- */
-@Slf4j
-@RunWith(SpringRunner.class)
-@SpringBootTest(classes = CacheVerticalClassModuleApplication.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
-public class CacheVerticalGlassModuleApplicationTest {
-
- @Autowired
- BigStorageCageService bigStorageCageService;
- @Autowired
- PlcStorageCageTask plcStorageCageTask;
-
- @Test
- public void testFindPath() {
- log.info("瀹屾暣璺緞锛歿}", Arrays.asList("123"));
- }
-
- @Test
- public void computeTargetByLine() {
-// log.info("鑾峰彇澶х悊鐗囩淇℃伅锛歿}",bigStorageCageService.querybigStorageCageDetail());
- plcStorageCageTask.computeTargetByLine(2001, "", "");
- }
-
- @Test
- public void judgeGlassTypeStatus() {
-// log.info("鑾峰彇澶х悊鐗囩淇℃伅锛歿}",bigStorageCageService.querybigStorageCageDetail());
- plcStorageCageTask.judgeGlassTypeStatus("P24060403|6|7", Const.A09_OUT_TARGET_POSITION);
- }
-
- @Test
- public void getStartLine() {
-// log.info("鑾峰彇澶х悊鐗囩淇℃伅锛歿}",bigStorageCageService.querybigStorageCageDetail());
- Integer startLine = plcStorageCageTask.getStartLine();
- log.info("---------{}", startLine);
- }
-
- @Test
- public void selectBigStorageCageUsage() {
-// bigStorageCageService.querybigStorageCageDetail(1);
- log.info("鑾峰彇澶х悊鐗囩淇℃伅锛歿}", bigStorageCageService.selectBigStorageCageUsage());
- }
-
-}
+//package com.mes;
+//
+//import cn.hutool.json.JSONArray;
+//import cn.hutool.json.JSONObject;
+//import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+//import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+//import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+//import com.fasterxml.jackson.databind.ObjectMapper;
+//import com.mes.bigstorage.entity.BigStorageCage;
+//import com.mes.bigstorage.entity.BigStorageCageDetails;
+//import com.mes.bigstorage.service.BigStorageCageDetailsService;
+//import com.mes.bigstorage.service.BigStorageCageService;
+//import com.mes.bigstoragetask.mapper.BigStorageCageFeedTaskMapper;
+//import com.mes.common.config.Const;
+//import com.mes.damage.entity.Damage;
+//import com.mes.damage.service.DamageService;
+//import com.mes.edgglasstask.entity.EdgGlassTaskInfo;
+//import com.mes.edgglasstask.service.EdgGlassTaskInfoService;
+////import com.mes.job.PlcStorageCageTask;
+//import com.mes.pp.entity.ReportingWork;
+//import com.mes.pp.entity.ReportingWorkDetail;
+//import com.mes.temperingglass.entity.TemperingGlassInfo;
+//import lombok.extern.slf4j.Slf4j;
+//import org.junit.Test;
+//import org.junit.runner.RunWith;
+//import org.springframework.beans.factory.annotation.Autowired;
+//import org.springframework.boot.test.context.SpringBootTest;
+//import org.springframework.test.context.junit4.SpringRunner;
+//
+//import java.io.BufferedReader;
+//import java.io.InputStreamReader;
+//import java.io.OutputStream;
+//import java.net.HttpURLConnection;
+//import java.net.URL;
+//import java.time.LocalDateTime;
+//import java.time.format.DateTimeFormatter;
+//import java.util.*;
+//
+///**
+// * @Author : zhoush
+// * @Date: 2024/3/27 16:37
+// * @Description:
+// */
+//@Slf4j
+//@RunWith(SpringRunner.class)
+//@SpringBootTest(classes = CacheVerticalClassModuleApplication.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
+//public class CacheVerticalGlassModuleApplicationTest {
+//
+// @Autowired
+// BigStorageCageService bigStorageCageService;
+//// @Autowired
+//// PlcStorageCageTask plcStorageCageTask;
+// @Autowired
+// BigStorageCageDetailsService bigStorageCageDetailsService;
+// @Autowired
+// DamageService damageService;
+// @Autowired
+// EdgGlassTaskInfoService edgGlassTaskInfoService;
+//
+//// @Autowired
+//// BigStorageCageFeedTaskMapper bigStorageCageFeedTaskMapper;
+//
+// @Test
+// public void testInsertSlot() {
+// List<BigStorageCage> list = new ArrayList();
+// for (int j = 1; j <= 5; j++) {
+// for (int i = 1 + (55 * (j - 1)); i <= 55 * j; i++) {
+// BigStorageCage cage = new BigStorageCage();
+// cage.setDeviceId(j);
+// cage.setSlot(i);
+// cage.setMinThickness(4);
+// cage.setMaxThickness(6);
+// cage.setEnableState(1);
+// cage.setRemainWidth(5000);
+// list.add(cage);
+// }
+// }
+// for (int i = 276; i <= 300; i++) {
+// BigStorageCage cage = new BigStorageCage();
+// cage.setDeviceId(6);
+// cage.setSlot(i);
+// cage.setMinThickness(8);
+// cage.setMaxThickness(12);
+// cage.setEnableState(1);
+// cage.setRemainWidth(5000);
+// list.add(cage);
+// }
+// for (int i = 301; i <= 330; i++) {
+// BigStorageCage cage = new BigStorageCage();
+// cage.setDeviceId(7);
+// cage.setSlot(i);
+// cage.setMinThickness(8);
+// cage.setMaxThickness(12);
+// cage.setEnableState(1);
+// cage.setRemainWidth(5000);
+// list.add(cage);
+// }
+// for (int i = 331; i <= 355; i++) {
+// BigStorageCage cage = new BigStorageCage();
+// cage.setDeviceId(8);
+// cage.setSlot(i);
+// cage.setMinThickness(8);
+// cage.setMaxThickness(12);
+// cage.setEnableState(1);
+// cage.setRemainWidth(5000);
+// list.add(cage);
+// }
+// for (int i = 356; i <= 380; i++) {
+// BigStorageCage cage = new BigStorageCage();
+// cage.setDeviceId(9);
+// cage.setSlot(i);
+// cage.setMinThickness(15);
+// cage.setMaxThickness(19);
+// cage.setEnableState(1);
+// cage.setRemainWidth(5000);
+// list.add(cage);
+// }
+// bigStorageCageService.saveBatch(list);
+// }
+//
+// @Test
+// public void testFindPath() {
+// log.info("瀹屾暣璺緞锛歿}", Arrays.asList("123"));
+// }
+//
+// @Test
+// public void outGlass() {
+// log.info("瀹屾暣璺緞锛歿}", bigStorageCageService.outGlass());
+// }
+//
+// @Test
+// public void plcToHomeEdgOutTask() {
+// plcStorageCageTask.plcToHomeEdgOutTask();
+// }
+//
+// @Test
+// public void plcToHomeEdgFreeCarTask() {
+// plcStorageCageTask.plcToHomeEdgFreeCarTask();
+// }
+//
+// @Test
+// public void plcStorageCageTask() {
+// plcStorageCageTask.plcToHomeEdgScan();
+//
+// }
+//
+//
+//
+// @Test
+// public void computeTargetByLine() {
+// plcStorageCageTask.computeTargetByLine(2001);
+// }
+//
+// @Test
+// public void judgeGlassTypeStatus() {
+// plcStorageCageTask.judgeGlassTypeStatus("P24060403|6|7", Const.A09_OUT_TARGET_POSITION, "mesD03Address");
+// }
+//
+// @Test
+// public void getStartLine() {
+// Integer startLine = plcStorageCageTask.getStartLine();
+// log.info("---------{}", startLine);
+// }
+//
+// @Test
+// public void selectBigStorageCageUsage() {
+// log.info("鑾峰彇澶х悊鐗囩淇℃伅锛歿}", bigStorageCageService.selectBigStorageCageUsage());
+// }
+//
+// @Test
+// public void selectBigStorageCageDetails() {
+// log.info("鑾峰彇澶х悊鐗囩淇℃伅锛歿}", bigStorageCageDetailsService.selectBigStorageCageDetails("P24060403|3|6"));
+// }
+//
+// @Test
+// public void insertDamage() {
+//// Damage damage=new Damage();
+//// damage.setGlassId("P24060403|3|6");
+//// damage.setLine(2001);
+//// damage.setWorkingProcedure("鍐峰姞宸�");
+//// damage.setRemark("");
+//// damage.setStatus(2);
+//// damageService.insertDamage(damage);
+// Damage damage=damageService.getOne(
+// new LambdaQueryWrapper<Damage>()
+// .eq(Damage::getGlassId,"P24071503|12|4")
+// );
+// damageService.submitReport(damage);
+// }
+//
+// @Test
+// public void updateOutGlassStateTask() {
+// plcStorageCageTask.updateOutGlassStateTask();
+// }
+//
+// @Test
+// public void chaxun(){
+// List<EdgGlassTaskInfo> edgGlassTaskInfoList = edgGlassTaskInfoService.list(new QueryWrapper<EdgGlassTaskInfo>()
+// .select("Top 1 *")
+// .eq("glass_id", "P24072402|1|13")
+// );
+// log.info("鍦ㄥ昂瀵歌〃涓幏鍙栫幓鐠冧俊鎭瘂}", edgGlassTaskInfoList);
+// }
+//
+// @Test
+// public void deleteByGlassId(){
+// damageService.deleteByGlassId("P24081203|2|5");
+// }
+//
+// @Test
+// public void testttt(){
+// List<Integer> deviceUsedList = bigStorageCageService.queryFreeDeviceByUsed(6);
+// List<Integer> deviceUseds = deviceUsedList;
+// List<BigStorageCageDetails> engineerCount1 = bigStorageCageDetailsService.list(
+// new LambdaQueryWrapper<BigStorageCageDetails>()
+// .notIn(BigStorageCageDetails::getState, Const.GLASS_STATE_OUT,Const.GLASS_STATE_DAMAGE,Const.GLASS_STATE_TAKE)
+// .select(BigStorageCageDetails::getEngineerId)
+// .groupBy(BigStorageCageDetails::getEngineerId)
+// .between(BigStorageCageDetails::getDeviceId, 1, 5)
+// );
+// List<BigStorageCageDetails> engineerCount2 = bigStorageCageDetailsService.list(
+// new LambdaQueryWrapper<BigStorageCageDetails>()
+// .notIn(BigStorageCageDetails::getState, Const.GLASS_STATE_OUT,Const.GLASS_STATE_DAMAGE,Const.GLASS_STATE_TAKE)
+// .select(BigStorageCageDetails::getEngineerId)
+// .groupBy(BigStorageCageDetails::getEngineerId)
+// .between(BigStorageCageDetails::getDeviceId, 6, 8)
+// );
+// if (engineerCount1.size() > engineerCount2.size()) {
+// deviceUsedList.removeIf(device -> device < 6);
+// } else {
+// deviceUsedList.removeIf(device -> device > 5);
+// }
+// if (CollectionUtils.isEmpty(deviceUsedList)) {
+// deviceUsedList = deviceUseds;
+// }
+// log.info("zhi:{}",deviceUsedList);
+// }
+//
+//
+// @Test
+// public void ca(){
+// try {
+// // 鐩爣绯荤粺鐨凙PI URL
+// String url = "http://192.168.3.119:8086/reportingWork/mesSaveReportingWorkWorn";
+// URL obj = new URL(url);
+// HttpURLConnection con = (HttpURLConnection) obj.openConnection();
+//
+// // 璁剧疆璇锋眰鏂规硶鍜岃姹傚ご
+// con.setRequestMethod("POST");
+// con.setRequestProperty("Content-Type", "application/json; utf-8");
+// con.setRequestProperty("Accept", "application/json");
+// con.setDoOutput(true);
+//
+// // 鍒涘缓 JSON 瀵硅薄
+// JSONObject result = new JSONObject();
+//
+// ReportingWork reportingWork = new ReportingWork();
+// reportingWork.setOrderId("NG24042301");
+// reportingWork.setProductionId("NG24042301A");
+// reportingWork.setProcessId("NG24042301A001");
+// reportingWork.setDeviceName("纾ㄨ竟鏈�");
+// reportingWork.setThisProcess("鍒囧壊");
+// reportingWork.setNextProcess("纾ㄨ竟");
+// reportingWork.setThisCompletedQuantity(1);
+// reportingWork.setThisWornQuantity(0);
+// reportingWork.setClasses("鏃╃彮");
+// reportingWork.setReportingWorkTime(LocalDateTime.now());
+// reportingWork.setTeamsGroupsName("灏忓粬涓�鍙�");
+// reportingWork.setCreator("灏忓粬");
+//
+// List<ReportingWorkDetail> reportingWorkDetails = new ArrayList<>();
+// ReportingWorkDetail reportingWorkDetail = new ReportingWorkDetail();
+// reportingWorkDetail.setTechnologyNumber(1);
+// reportingWorkDetail.setOrderNumber(1);
+// reportingWorkDetail.setCompletedQuantity(1);
+// reportingWorkDetail.setBreakageQuantity(0);
+// reportingWorkDetails.add(reportingWorkDetail);
+//
+// ObjectMapper objectMapper = new ObjectMapper();
+//
+// // 灏� ReportingWork 杞崲涓� JSONObject
+// JSONObject reportingWorkJson = new JSONObject(objectMapper.writeValueAsString(reportingWork));
+// reportingWorkJson.put("reportingWorkTime", reportingWork.getReportingWorkTime().format(DateTimeFormatter.ISO_LOCAL_DATE_TIME));
+// // 灏� ReportingWorkDetail 鍒楄〃杞崲涓� JSONArray
+// JSONArray detailsJsonArray = new JSONArray(objectMapper.writeValueAsString(reportingWorkDetails));
+//
+// // 灏� JSON 瀵硅薄鍜屾暟缁勬坊鍔犲埌缁撴灉瀵硅薄涓�
+// result.put("title", reportingWorkJson);
+// result.put("detail", detailsJsonArray);
+// result.put("type", 0);
+// result.put("userId", "admin");
+// result.put("userName", "admin");
+// result.put("qualityInsStatus", 0);
+//
+// // 灏� result 瀵硅薄杞崲涓哄瓧绗︿覆
+// String jsonInputString = result.toString();
+// System.out.println("jsonInputString : " + result);
+// // 鍙戦�佽姹�
+// try (OutputStream os = con.getOutputStream()) {
+// byte[] input = jsonInputString.getBytes("utf-8");
+// os.write(input, 0, input.length);
+// }
+//
+// // 鑾峰彇鍝嶅簲鐮�
+// int responseCode = con.getResponseCode();
+// System.out.println("Response Code : " + responseCode);
+//
+// // 鑾峰彇鍝嶅簲鍐呭
+// try (BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream(), "utf-8"))) {
+// StringBuilder response = new StringBuilder();
+// String inputLine;
+// while ((inputLine = in.readLine()) != null) {
+// response.append(inputLine);
+// }
+// System.out.println("Response Body: " + response.toString());
+// }
+//
+// } catch (Exception e) {
+// e.printStackTrace();
+// }
+// }
+//}
--
Gitblit v1.8.0