From dd47e5cc3aa5b31f1967360c623355b5291fe254 Mon Sep 17 00:00:00 2001 From: DouDou <877258667@qq.com> Date: Thu, 5 Sep 2024 16:29:27 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=A5=E5=85=B7=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Tooling/controller/ToolController.java | 6 -- .../spring/modules/Tooling/dao/ToolDao.java | 2 +- .../modules/Tooling/dao/impl/ToolDaoImpl.java | 19 ++--- .../Tooling/data/IfsToolInstanceData.java | 74 +++++++++++++++++-- .../Tooling/entity/IfsToolInstance.java | 21 ++++-- .../Tooling/service/impl/ToolServiceImpl.java | 38 +++++++++- 6 files changed, 132 insertions(+), 28 deletions(-) diff --git a/src/main/java/com/spring/modules/Tooling/controller/ToolController.java b/src/main/java/com/spring/modules/Tooling/controller/ToolController.java index bda42377..cbab1b17 100644 --- a/src/main/java/com/spring/modules/Tooling/controller/ToolController.java +++ b/src/main/java/com/spring/modules/Tooling/controller/ToolController.java @@ -7,13 +7,7 @@ import com.spring.modules.Tooling.entity.IfsTool; import com.spring.modules.Tooling.entity.IfsToolInstance; import com.spring.modules.Tooling.entity.IfsToolInstanceDate; import com.spring.modules.Tooling.service.ToolService; -import com.spring.modules.Tooling.service.ToolingApplyService; -import com.spring.modules.quotation.service.QuotationHeaderService; -import com.spring.modules.quotation.vo.QuotationHeaderVo; -import org.apache.ibatis.annotations.Mapper; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Repository; -import org.springframework.util.StringUtils; import org.springframework.web.bind.annotation.*; import java.util.List; diff --git a/src/main/java/com/spring/modules/Tooling/dao/ToolDao.java b/src/main/java/com/spring/modules/Tooling/dao/ToolDao.java index 024b7d8a..09630066 100644 --- a/src/main/java/com/spring/modules/Tooling/dao/ToolDao.java +++ b/src/main/java/com/spring/modules/Tooling/dao/ToolDao.java @@ -86,7 +86,7 @@ public interface ToolDao { * @date 2024/8/30 14:28 * @version 1.0 */ - int insertToolInstance(IfsToolInstance inData); + void insertToolInstance(IfsToolInstance inData); /** * @description: 修改工具实例的信息 diff --git a/src/main/java/com/spring/modules/Tooling/dao/impl/ToolDaoImpl.java b/src/main/java/com/spring/modules/Tooling/dao/impl/ToolDaoImpl.java index 4c1d5682..f78d2bc6 100644 --- a/src/main/java/com/spring/modules/Tooling/dao/impl/ToolDaoImpl.java +++ b/src/main/java/com/spring/modules/Tooling/dao/impl/ToolDaoImpl.java @@ -87,9 +87,12 @@ public class ToolDaoImpl implements ToolDao { public List getToolInstanceList(String site, String toolId) { StringBuilder sql = new StringBuilder(); Map paramMap = new HashMap(); - sql.append("SELECT site, tool_id toolId, tool_instance_id toolInstance, work_center_no normalWorkCenterNo, c_desc desc,"); + sql.append("SELECT site, tool_id toolId, tool_instance_id toolInstance, work_center_no normalWorkCenterNo, c_desc description,"); sql.append(" c_last_calibration_date lastCalibrationDate, c_object_id objectId, c_normal_production_line normalProductionLine,"); sql.append(" c_note_text noteText, c_tool_discrimination toolDiscrimination, c_tool_linearity toolLinearity, c_tool_repeatability toolRepeatability,"); + //后续添加的字段 + sql.append(" c_next_calibration_date nextCalibrationDate, '' toolResourceId, '' toolResourceDesc, dbo.get_workCenter_desc(site, work_center_no) normalWorkCenterDesc,"); + sql.append(" c_state state, dbo.getProductionLineDesc(site, c_normal_production_line) normalProductionLineDesc, '' toolResourceId, '' toolResourceDesc,"); sql.append(" c_tool_bias toolBias, c_tool_stability toolStability, c_tool_reproducibility toolReproducibility"); sql.append(" FROM tool_detail td"); sql.append(" WHERE td.site = :site AND td.tool_id = :toolId"); @@ -167,17 +170,15 @@ public class ToolDaoImpl implements ToolDao { } @Override - public int insertToolInstance(IfsToolInstance inData) { + public void insertToolInstance(IfsToolInstance inData) { StringBuilder sql = new StringBuilder(); - KeyHolder keyHolder = new GeneratedKeyHolder(); sql.append("INSERT INTO tool_detail(site, tool_id, tool_instance_id, work_center_no, c_desc, c_last_calibration_date,"); sql.append(" c_object_id, c_normal_production_line, c_note_text, c_tool_discrimination, c_tool_linearity, c_tool_repeatability, c_tool_bias, c_tool_stability,"); - sql.append(" c_tool_reproducibility)"); - sql.append(" VALUES(:site, :toolId, :toolInstance, :normalWorkCenterNo, :desc, :lastCalibrationDate,"); + sql.append(" c_tool_reproducibility, c_next_calibration_date, c_state)"); + sql.append(" VALUES(:site, :toolId, :toolInstance, :normalWorkCenterNo, :description, :lastCalibrationDate,"); sql.append(" :objectId, :normalProductionLine, :noteText, :toolDiscrimination, :toolLinearity, :toolRepeatability, :toolBias, :toolStability,"); - sql.append(" :toolReproducibility)"); - parameterJdbcTemplate.update(sql.toString(), new BeanPropertySqlParameterSource(inData), keyHolder); - return keyHolder.getKey().intValue(); + sql.append(" :toolReproducibility, :nextCalibrationDate, :state)"); + parameterJdbcTemplate.update(sql.toString(), new BeanPropertySqlParameterSource(inData)); } @Override @@ -231,7 +232,7 @@ public class ToolDaoImpl implements ToolDao { public IfsToolInstanceData getToolInstanceByToolInstance(String site, String toolId, String toolInstance) { StringBuilder sql = new StringBuilder(); Map paramMap = new HashMap(); - sql.append("SELECT site, tool_id toolId, , work_center_no normalWorkCenterNo, c_desc desc,"); + sql.append("SELECT site, tool_id toolId, tool_instance_id toolInstance, work_center_no normalWorkCenterNo, c_desc description,"); sql.append(" c_last_calibration_date lastCalibrationDate, c_object_id objectId, c_normal_production_line normalProductionLine,"); sql.append(" c_note_text noteText, c_tool_discrimination toolDiscrimination, c_tool_linearity toolLinearity, c_tool_repeatability toolRepeatability,"); sql.append(" c_tool_bias toolBias, c_tool_stability toolStability, c_tool_reproducibility toolReproducibility"); diff --git a/src/main/java/com/spring/modules/Tooling/data/IfsToolInstanceData.java b/src/main/java/com/spring/modules/Tooling/data/IfsToolInstanceData.java index 37cc70b6..cafeb8da 100644 --- a/src/main/java/com/spring/modules/Tooling/data/IfsToolInstanceData.java +++ b/src/main/java/com/spring/modules/Tooling/data/IfsToolInstanceData.java @@ -2,8 +2,9 @@ package com.spring.modules.Tooling.data; public class IfsToolInstanceData extends IfsToolData { private String toolInstance; - private String desc; + private String description; private String lastCalibrationDate; + private String nextCalibrationDate;// private String objectId; private String normalWorkCenterNo; private String normalProductionLine; @@ -15,6 +16,12 @@ public class IfsToolInstanceData extends IfsToolData { private String toolBias; private String toolStability; private String toolReproducibility; + private String toolResourceId; + private String toolResourceDesc; + private String lastUsageReport; + private String normalWorkCenterDesc; + private String state; + private String normalProductionLineDesc; public IfsToolInstanceData() { super(); @@ -29,12 +36,30 @@ public class IfsToolInstanceData extends IfsToolData { this.toolInstance = toolInstance; } - public String getDesc() { - return desc; + public String getDescription() { + return description; } - public void setDesc(String desc) { - this.desc = desc; + public void setDescription(String description) { + this.description = description; + } + + public String getNormalWorkCenterDesc() { + return normalWorkCenterDesc; + } + + public void setNormalWorkCenterDesc(String normalWorkCenterDesc) { + this.normalWorkCenterDesc = normalWorkCenterDesc; + } + + @Override + public String getState() { + return state; + } + + @Override + public void setState(String state) { + this.state = state; } public String getLastCalibrationDate() { @@ -45,6 +70,14 @@ public class IfsToolInstanceData extends IfsToolData { this.lastCalibrationDate = lastCalibrationDate; } + public String getNextCalibrationDate() { + return nextCalibrationDate; + } + + public void setNextCalibrationDate(String nextCalibrationDate) { + this.nextCalibrationDate = nextCalibrationDate; + } + public String getObjectId() { return objectId; } @@ -125,4 +158,35 @@ public class IfsToolInstanceData extends IfsToolData { this.toolReproducibility = toolReproducibility; } + public String getToolResourceId() { + return toolResourceId; + } + + public void setToolResourceId(String toolResourceId) { + this.toolResourceId = toolResourceId; + } + + public String getToolResourceDesc() { + return toolResourceDesc; + } + + public void setToolResourceDesc(String toolResourceDesc) { + this.toolResourceDesc = toolResourceDesc; + } + + public String getLastUsageReport() { + return lastUsageReport; + } + + public void setLastUsageReport(String lastUsageReport) { + this.lastUsageReport = lastUsageReport; + } + + public String getNormalProductionLineDesc() { + return normalProductionLineDesc; + } + + public void setNormalProductionLineDesc(String normalProductionLineDesc) { + this.normalProductionLineDesc = normalProductionLineDesc; + } } diff --git a/src/main/java/com/spring/modules/Tooling/entity/IfsToolInstance.java b/src/main/java/com/spring/modules/Tooling/entity/IfsToolInstance.java index b8edfe4d..8ca21c6d 100644 --- a/src/main/java/com/spring/modules/Tooling/entity/IfsToolInstance.java +++ b/src/main/java/com/spring/modules/Tooling/entity/IfsToolInstance.java @@ -7,10 +7,13 @@ import java.util.Date; public class IfsToolInstance extends IfsTool { private String toolInstance; - private String desc; + private String description; @DateTimeFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd") private Date lastCalibrationDate; + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date nextCalibrationDate; private String objectId; private String normalWorkCenterNo; private String normalProductionLine; @@ -37,12 +40,12 @@ public class IfsToolInstance extends IfsTool { this.toolInstance = toolInstance; } - public String getDesc() { - return desc; + public String getDescription() { + return description; } - public void setDesc(String desc) { - this.desc = desc; + public void setDescription(String description) { + this.description = description; } public Date getLastCalibrationDate() { @@ -53,6 +56,14 @@ public class IfsToolInstance extends IfsTool { this.lastCalibrationDate = lastCalibrationDate; } + public Date getNextCalibrationDate() { + return nextCalibrationDate; + } + + public void setNextCalibrationDate(Date nextCalibrationDate) { + this.nextCalibrationDate = nextCalibrationDate; + } + public String getObjectId() { return objectId; } diff --git a/src/main/java/com/spring/modules/Tooling/service/impl/ToolServiceImpl.java b/src/main/java/com/spring/modules/Tooling/service/impl/ToolServiceImpl.java index 591bcf8c..44d8d4f6 100644 --- a/src/main/java/com/spring/modules/Tooling/service/impl/ToolServiceImpl.java +++ b/src/main/java/com/spring/modules/Tooling/service/impl/ToolServiceImpl.java @@ -274,34 +274,68 @@ public class ToolServiceImpl implements ToolService { String toolId = inData.getToolId(); String toolInstance = inData.getToolInstance(); Date lastCalibrationDate = inData.getLastCalibrationDate(); + String objectId = inData.getObjectId(); + String normalWorkCenterNo = inData.getNormalWorkCenterNo(); + String normalProductionLine = inData.getNormalProductionLine(); //查询是否存在 IfsToolInstanceData toolInstanceData = toolDao.getToolInstanceByToolInstance(site, toolId, toolInstance); //如果存在 if(toolInstanceData != null){ throw new RuntimeException("已存在当前工具实例!"); } + //1.调用存储过程检查工具实例的新增 + Map resultMap = this.checkInsertToolInstance(site, toolId, toolInstance, objectId, normalWorkCenterNo, normalProductionLine); + //判断是否检验成功 + String resultCode = String.valueOf(resultMap.get("result_code")); + if ("400".equalsIgnoreCase(resultCode)) { + String resultMsg = String.valueOf(resultMap.get("result_msg")); + throw new RuntimeException(resultMsg); + } + //2.校验存在调用接口 toolInstanceData = new IfsToolInstanceDateData(); //拷贝属性 设置参数 BeanUtils.copyProperties(inData, toolInstanceData); String lastCalibrationTime = ""; if(lastCalibrationDate != null){ lastCalibrationTime = DateUtils.getStringDate(lastCalibrationDate, "yyyy-MM-dd"); + inData.setNextCalibrationDate(lastCalibrationDate); } toolInstanceData.setLastCalibrationDate(lastCalibrationTime); - //1.校验存在调用接口 + /*//2.校验存在调用接口 String toolURL = apiUrl + "/tool/ifs/syncToolInstanceToIfs"; ResponseData toolResponse = HttpClientUtil.doPostByRawWithPLM(toolURL, inData); if (!"200".equals(toolResponse.getCode())) { throw new RuntimeException("IFS ToolInstance新增异常:" + toolResponse.getMsg()); } String objStr = String.valueOf(toolResponse.getObj()); - IfsToolData ifsTool = JSON.parseObject(objStr, IfsToolData.class); + IfsToolData ifsTool = JSON.parseObject(objStr, IfsToolData.class);*/ inData.setCreateDate(new Date()); + inData.setState("Active"); //2.调用方法保存当前的数据 toolDao.insertToolInstance(inData); } + /** + * @description: 调用存储过程 检查插入工具实例 + * @author LR + * @date 2024/9/5 15:25 + * @version 1.0 + */ + public Map checkInsertToolInstance(String site, String toolId, String toolInstance, String objectId, String normalWorkCenterNo, String normalProductionLine) { + List params = new ArrayList<>(); + params.add(site); + params.add(toolId); + params.add(toolInstance); + params.add(objectId); + params.add(normalWorkCenterNo); + params.add(normalProductionLine); + //调用存储过程 + List> resultList = procedureDao.getProcedureData("checkInsertToolInstance", params); + //处理返回的结果 + return resultList.get(0); + } + @Override public void modifyToolInstance(IfsToolInstance inData) { //公共参数