From 71594bd2dc9201834aa533099e9e49a9b84506cd Mon Sep 17 00:00:00 2001 From: wangfei <3597712270@qq.com> Date: 星期四, 12 六月 2025 15:32:25 +0800 Subject: [PATCH] 新增韩语 --- hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/service/impl/DamageServiceImpl.java | 142 ++++++++++++++++++++++++++++++++++------------ 1 files changed, 104 insertions(+), 38 deletions(-) diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/service/impl/DamageServiceImpl.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/service/impl/DamageServiceImpl.java index 06f0801..8cf818c 100644 --- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/service/impl/DamageServiceImpl.java +++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/damage/service/impl/DamageServiceImpl.java @@ -18,6 +18,8 @@ import com.mes.pp.entity.ReportingWorkDetail; import com.mes.work_assignment.entity.WorkAssignment; import com.mes.work_assignment.mapper.WorkAssignmentMapper; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; @@ -43,6 +45,7 @@ * @author wu * @since 2024-06-13 */ +@Slf4j @Service public class DamageServiceImpl extends MPJBaseServiceImpl<DamageMapper, Damage> implements DamageService { @@ -51,10 +54,9 @@ @Resource WorkAssignmentMapper workAssignmentMapper; - @Override - public List<Damage> selectDamage(String startTime, String endTime, int type, String workingProcedure) { - return null; - } + + private final static String ERP_URL = "http://192.168.2.100:8086"; + /** * 鏌ヨ鎶ュ伐淇℃伅 @@ -74,10 +76,10 @@ } List<Damage> damageList = baseMapper.selectList(damageSelectWrapper); - for (Damage damage : damageList) { - damage.setStatus(2); - } - return baseMapper.selectList(damageSelectWrapper); +// for (Damage damage : damageList) { +// damage.setStatus(2); +// } + return damageList; } /** @@ -86,7 +88,7 @@ @Override public void submitDamage(List<Damage> damageList) { Map<String, List<Damage>> firstMap = damageList.stream().collect(Collectors.groupingBy(e -> e.getProcessId() + ":" - + e.getWorkingProcedure() + ":" + e.getDeviceName() + ":" + e.getTeamsGroupsName())); + + e.getWorkingProcedure() + ":" + e.getDeviceName() + ":" + e.getTeamsGroupsName() + ":" + e.getOrderNumber() + ":" + e.getTechnologyNumber())); for (Map.Entry<String, List<Damage>> entry : firstMap.entrySet()) { ReportingWork reportingWork = new ReportingWork(); List<ReportingWorkDetail> reportingWorkDetails = new ArrayList<>(); @@ -95,7 +97,12 @@ reportingWork.setOrderId(damages.get(0).getProcessId().substring(0, 10)); reportingWork.setProductionId(damages.get(0).getProcessId().substring(0, 11)); reportingWork.setProcessId(damages.get(0).getProcessId() + "/" + damages.get(0).getTechnologyNumber()); - reportingWork.setDeviceName(damages.get(0).getDeviceName()); +// reportingWork.setDeviceName(damages.get(0).getDeviceName()); + if (StringUtils.isBlank(damages.get(0).getDeviceName())) { + reportingWork.setDeviceName("auto"); + } else { + reportingWork.setDeviceName(damages.get(0).getDeviceName()); + } reportingWork.setThisProcess(damages.get(0).getWorkingProcedure()); reportingWork.setThisCompletedQuantity(0); reportingWork.setThisWornQuantity(0); @@ -109,7 +116,7 @@ reportingWorkDetail.setOrderNumber(damages.get(0).getOrderNumber()); reportingWorkDetail.setCompletedQuantity(0); reportingWorkDetail.setBreakageQuantity(0); - reportingWorkDetails.add(reportingWorkDetail); + Map<String, List<Damage>> secondMap = damages.stream().collect(Collectors.groupingBy(e -> e.getProcessId() + ":" + e.getWorkingProcedure() + ":" + e.getDeviceName() + ":" + e.getTeamsGroupsName())); @@ -123,6 +130,7 @@ reportingWork.setThisCompletedQuantity(damagesdetails.size() + reportingWork.getThisCompletedQuantity()); } else { reportingWork.setThisWornQuantity(damagesdetails.size() + reportingWork.getThisWornQuantity()); + reportingWorkDetail.setBreakageQuantity(damagesdetails.size()); DamageDetails damageDetails = new DamageDetails(); damageDetails.setBreakageQuantity(damagesdetails.size()); damageDetails.setBreakageType(damagesdetails.get(0).getBreakageType()); @@ -131,11 +139,21 @@ damageDetails.setResponsibleEquipment(damagesdetails.get(0).getResponsibleEquipment()); damageDetails.setResponsibleTeam(damagesdetails.get(0).getResponsibleTeam()); damageDetails.setResponsiblePersonnel(null); + if (damagesdetails.get(0).getStatus() == 7) { + damageDetails.setQualityInspector("auto"); + damageDetails.setPatchStatus(1); + damageDetails.setQualityInsStatus(2); + } else { + damageDetails.setQualityInspector(""); + damageDetails.setPatchStatus(0); + damageDetails.setQualityInsStatus(0); + } damageDetailses.add(damageDetails); } } - reportingWorkDetail.setDamageDetailsList(damageDetailses); - sendToERP(reportingWork, reportingWorkDetails); + reportingWorkDetails.add(reportingWorkDetail); + reportingWorkDetail.setDamageDetails(damageDetailses); + sendToERP(reportingWork, reportingWorkDetails, Boolean.FALSE); } } @@ -145,9 +163,12 @@ reportingWork.setOrderId(damage.getProcessId().substring(0, 10)); reportingWork.setProductionId(damage.getProcessId().substring(0, 11)); reportingWork.setProcessId(damage.getProcessId() + "/" + damage.getTechnologyNumber()); - reportingWork.setDeviceName(damage.getDeviceName()); + if (StringUtils.isBlank(damage.getDeviceName())) { + reportingWork.setDeviceName("auto"); + } else { + reportingWork.setDeviceName(damage.getDeviceName()); + } reportingWork.setThisProcess(damage.getWorkingProcedure()); -// reportingWork.setNextProcess("纾ㄨ竟"); reportingWork.setThisCompletedQuantity(1); reportingWork.setThisWornQuantity(0); reportingWork.setClasses("鏃╃彮"); @@ -162,7 +183,18 @@ reportingWorkDetail.setCompletedQuantity(1); reportingWorkDetail.setBreakageQuantity(0); reportingWorkDetails.add(reportingWorkDetail); - return sendToERP(reportingWork, reportingWorkDetails); + return sendToERP(reportingWork, reportingWorkDetails, Boolean.TRUE); + } + + @Override + public void autoSubmitReport(String glassId, int deviceId, String workingProcedure, String remark, int type) { + Damage damage = new Damage(); + damage.setGlassId(glassId); + damage.setWorkingProcedure(workingProcedure); + damage.setLine(deviceId); + damage.setType(type); + damage.setRemark(remark); + this.insertDamage(damage); } /** @@ -170,13 +202,24 @@ */ @Override public void insertDamage(Damage damage) { - List<Damage> damage1 = baseMapper.selectList( - new LambdaQueryWrapper<Damage>() - .ne(Damage::getType, Const.GLASS_STATE_DAMAGE) - .ne(Damage::getType, Const.GLASS_STATE_TAKE) - .eq(Damage::getLine, damage.getLine()) - .eq(Damage::getWorkingProcedure, damage.getWorkingProcedure()) - ); + List<Damage> damage1 = null; + if (Const.GLASS_STATE_DAMAGE.equals(damage.getType()) || Const.GLASS_STATE_TAKE.equals(damage.getType())) { + damage1 = baseMapper.selectList( + new LambdaQueryWrapper<Damage>() + .in(Damage::getType, Const.GLASS_STATE_DAMAGE, Const.GLASS_STATE_TAKE) + .notIn(Damage::getStatus, 7, 8) + .lt(Damage::getStatus, 7) + .eq(Damage::getGlassId, damage.getGlassId()) + ); + } else { + damage1 = baseMapper.selectList( + new LambdaQueryWrapper<Damage>() + .notIn(Damage::getType, Const.GLASS_STATE_DAMAGE, Const.GLASS_STATE_TAKE) + .eq(Damage::getLine, damage.getLine()) + .eq(Damage::getWorkingProcedure, damage.getWorkingProcedure()) + .eq(Damage::getGlassId, damage.getGlassId()) + ); + } if (damage1 == null || damage1.size() == 0) { LambdaQueryWrapper<GlassInfo> glassInfoSelectWrapper = new LambdaQueryWrapper<>(); glassInfoSelectWrapper.eq(GlassInfo::getGlassId, damage.getGlassId()); @@ -199,10 +242,10 @@ if (damage.getType() == null) { damage.setType(1); } - if (damage.getType() == 1) { - if (submitReport(damage)) { - damage.setStatus(2); - } + if (damage.getType() == 1 && submitReport(damage)) { + damage.setStatus(3); + } else { + damage.setStatus(1); } baseMapper.insert(damage); } @@ -272,15 +315,26 @@ baseMapper.delete( new LambdaQueryWrapper<Damage>() .eq(Damage::getGlassId, glassId) - .in(Damage::getType, Const.GLASS_STATE_DAMAGE, Const.GLASS_STATE_TAKE) + .in(Damage::getType, Const.GLASS_STATE_DAMAGE_TAKE) + .lt(Damage::getStatus, 7) ); } @Override - public Boolean sendToERP(ReportingWork reportingWork, List<ReportingWorkDetail> reportingWorkDetails) { + public Boolean sendToERP(ReportingWork reportingWork, List<ReportingWorkDetail> reportingWorkDetails, Boolean type) { + log.info("鎶ュ伐鏁版嵁reportingWork锛歿}锛宺eportingWorkDetails锛歿}", reportingWork, reportingWorkDetails); try { // 鐩爣绯荤粺鐨凙PI URL - String url = "http://192.168.1.199:8086/reportingWork/mesSaveReportingWorkWorn"; + + + String url1 = ERP_URL + "/reportingWork/mesReportingWork"; + String url2 = ERP_URL + "/reportingWork/mesSaveReportingWorkWorn"; + String url; + if (type) { + url = url1; + } else { + url = url2; + } URL obj = new URL(url); HttpURLConnection con = (HttpURLConnection) obj.openConnection(); @@ -296,19 +350,33 @@ ObjectMapper objectMapper = new ObjectMapper(); // 灏� ReportingWork 杞崲涓� JSONObject + + // 灏� ReportingWorkDetail 鍒楄〃杞崲涓� JSONArray + + if (type) { + JSONObject detailsJsonObject = new JSONObject(objectMapper.writeValueAsString(reportingWorkDetails.get(0))); + result.put("detail", detailsJsonObject); + reportingWork.setProcessId(reportingWork.getProcessId().substring(0, 14)); + } else { + JSONArray detailsJsonArray = new JSONArray(objectMapper.writeValueAsString(reportingWorkDetails)); + result.put("detail", detailsJsonArray); + } 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); + if (reportingWorkDetails.get(0).getDamageDetails() != null) { + if (reportingWorkDetails.get(0).getDamageDetails().get(0).getPatchStatus() == 1) { + result.put("isPatch", 1); + } else { + result.put("isPatch", 0); + } + } result.put("userId", "admin"); result.put("userName", "admin"); result.put("qualityInsStatus", 0); - // 灏� result 瀵硅薄杞崲涓哄瓧绗︿覆 String jsonInputString = result.toString(); System.out.println("jsonInputString : " + result); @@ -335,15 +403,13 @@ // 鎻愬彇 code 鍜� message int code = jsonResponse.getInt("code"); String message = jsonResponse.getStr("data"); - + log.info("鎶ュ伐鎯呭喌锛歿},{}", code, message); if (code == 200 && message.equals("true")) { return true; } else { - return false; } } - } catch (Exception e) { e.printStackTrace(); return false; -- Gitblit v1.8.0