diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/SaveOrUpdateBusinessLogUtil.java b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/SaveOrUpdateBusinessLogUtil.java index 874c579f..b5843344 100644 --- a/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/SaveOrUpdateBusinessLogUtil.java +++ b/buildpackage/src/main/java/com/hzya/frame/plugin/lets/util/SaveOrUpdateBusinessLogUtil.java @@ -53,62 +53,118 @@ public class SaveOrUpdateBusinessLogUtil { } } if (integrationTaskLivingDetails != null) { - //存在 + //存在,则更新,可能是N→Y / N→N synchronized (insertOrUpdateLock) { integrationTaskLivingDetailsEntity.setId(integrationTaskLivingDetails.getId()); updateSuccessMessage(integrationTaskLivingDetailsEntity); -// iIntegrationTaskLivingDetailsDao.update("com.hzya.frame.sysnew.integtationTaskLivingDetails.dao.impl.IntegrationTaskLivingDetailsDaoImpl.entity_updatebyid", integrationTaskLivingDetailsEntity); - iIntegrationTaskLivingDetailsDao.update(integrationTaskLivingDetailsEntity); } } else { - //不存在 + //不存在,则新增,可能是→Y / →N Long uuid = UUIDLong.longUUID(); integrationTaskLivingDetailsEntity.setId(String.valueOf(uuid)); - updateSuccessMessage(integrationTaskLivingDetailsEntity); - IntegrationTaskLivingDetailsEntity save = iIntegrationTaskLivingDetailsDao.save(integrationTaskLivingDetailsEntity); -// System.out.println("save = " + save); - logger.info("integration_task_living_details->日志保存成功,主键:{}", save.getId()); + saveSuccessMessage(integrationTaskLivingDetailsEntity); +// logger.info("integration_task_living_details->日志保存成功,主键:{}", save.getId()); } } catch (Exception e) { logger.error("SaveOrUpdateBusinessLogUtil对应的saveOrUpdate方法抛出异常,日志详情保存失败!", e); //2024年9月3日 10:26:45 如果这里往上抛出异常,没有功能搭配处理 } } + /** + * 更新日志 存在,则更新,可能是N→Y / N→N + * 肯定有id + * @param integrationTaskLivingDetailsEntity + */ + private void updateSuccessMessage(IntegrationTaskLivingDetailsEntity integrationTaskLivingDetailsEntity) { + IntegrationTaskLivingDetailsEntity integrationTaskLivingDetailsEntity1 = queryIntegrationTaskLivingDetailsEntityN(integrationTaskLivingDetailsEntity.getId()); + if (successY.equals(integrationTaskLivingDetailsEntity.getNewState())) { + //N→Y + iIntegrationTaskLivingDetailsDao.deleteEntity(integrationTaskLivingDetailsEntity1); + + String successIdentification = "success"; + integrationTaskLivingDetailsEntity.setRootAppNewData(successIdentification); + integrationTaskLivingDetailsEntity.setNewTransmitInfo(successIdentification); + iIntegrationTaskLivingDetailsDao.saveSuccessLog(integrationTaskLivingDetailsEntity); + + } else if (failN.equals(integrationTaskLivingDetailsEntity.getNewState())) { + //N→N + String rootAppNewData = integrationTaskLivingDetailsEntity.getRootAppNewData(); + if (integrationTaskLivingDetailsEntity.getRootAppNewData() != null && !integrationTaskLivingDetailsEntity.getRootAppNewData().trim().equals("") && integrationTaskLivingDetailsEntity.getRootAppNewData().length() >= 500) { + rootAppNewData = integrationTaskLivingDetailsEntity.getRootAppNewData().substring(0, 500); + } + String newTransmitInfo = integrationTaskLivingDetailsEntity.getNewTransmitInfo(); + if (integrationTaskLivingDetailsEntity.getNewTransmitInfo() != null && !integrationTaskLivingDetailsEntity.getNewTransmitInfo().trim().equals("") && integrationTaskLivingDetailsEntity.getNewTransmitInfo().length() >= 500) { + newTransmitInfo = integrationTaskLivingDetailsEntity.getNewTransmitInfo().substring(0, 500); + } + integrationTaskLivingDetailsEntity.setRootAppNewData(rootAppNewData); + integrationTaskLivingDetailsEntity.setNewTransmitInfo(newTransmitInfo); + iIntegrationTaskLivingDetailsDao.entity_updatebyid(integrationTaskLivingDetailsEntity); + } + } + + /** + * 新增日志 不存在,则新增,可能是→Y / →N + * @param integrationTaskLivingDetailsEntity + */ + private void saveSuccessMessage(IntegrationTaskLivingDetailsEntity integrationTaskLivingDetailsEntity) { + if (successY.equals(integrationTaskLivingDetailsEntity.getNewState())) { + //→Y + String successIdentification = "success"; + integrationTaskLivingDetailsEntity.setRootAppNewData(successIdentification); + integrationTaskLivingDetailsEntity.setNewTransmitInfo(successIdentification); + iIntegrationTaskLivingDetailsDao.saveSuccessLog(integrationTaskLivingDetailsEntity); + + } else if (failN.equals(integrationTaskLivingDetailsEntity.getNewState())) { + //→N + String rootAppNewData = integrationTaskLivingDetailsEntity.getRootAppNewData(); + if (integrationTaskLivingDetailsEntity.getRootAppNewData() != null && !integrationTaskLivingDetailsEntity.getRootAppNewData().trim().equals("") && integrationTaskLivingDetailsEntity.getRootAppNewData().length() >= 500) { + rootAppNewData = integrationTaskLivingDetailsEntity.getRootAppNewData().substring(0, 500); + } + String newTransmitInfo = integrationTaskLivingDetailsEntity.getNewTransmitInfo(); + if (integrationTaskLivingDetailsEntity.getNewTransmitInfo() != null && !integrationTaskLivingDetailsEntity.getNewTransmitInfo().trim().equals("") && integrationTaskLivingDetailsEntity.getNewTransmitInfo().length() >= 500) { + newTransmitInfo = integrationTaskLivingDetailsEntity.getNewTransmitInfo().substring(0, 500); + } + integrationTaskLivingDetailsEntity.setRootAppNewData(rootAppNewData); + integrationTaskLivingDetailsEntity.setNewTransmitInfo(newTransmitInfo); + iIntegrationTaskLivingDetailsDao.save(integrationTaskLivingDetailsEntity); + } + + } /** * 修改成功消息 * * @author liuyang */ - private void updateSuccessMessage(IntegrationTaskLivingDetailsEntity integrationTaskLivingDetailsEntity) { - if (integrationTaskLivingDetailsEntity != null) { - if (successY.equals(integrationTaskLivingDetailsEntity.getNewState())) { - //成功 - String successIdentification = "success"; - integrationTaskLivingDetailsEntity.setRootAppNewData(successIdentification); - integrationTaskLivingDetailsEntity.setNewTransmitInfo(successIdentification); - /** - * integrationTaskLivingDetailsEntity.setRoot_app_new_data(JSON.toJSONString(searchPurchaseReceiptOrder)); - * integrationTaskLivingDetailsEntity.setNew_transmit_info(cgrkApi); - */ - } else if (failN.equals(integrationTaskLivingDetailsEntity.getNewState())) { - //2024年9月2日 17:09:07 如果失败,仅保留500个字符,用于平衡数据库性能 - //2024年9月2日 17:15:19 如果该单据判断为失败,则integration_task_living_details表的root_app_new_data、new_transmit_info字段,仅保留500个长度的字符,用于平衡性能,速网、珍视名项目这一块性能很差 - String rootAppNewData = integrationTaskLivingDetailsEntity.getRootAppNewData(); - if (integrationTaskLivingDetailsEntity.getRootAppNewData() != null && !integrationTaskLivingDetailsEntity.getRootAppNewData().trim().equals("") && integrationTaskLivingDetailsEntity.getRootAppNewData().length() >= 500) { - rootAppNewData = integrationTaskLivingDetailsEntity.getRootAppNewData().substring(0, 500); - } - String newTransmitInfo = integrationTaskLivingDetailsEntity.getNewTransmitInfo(); - if (integrationTaskLivingDetailsEntity.getNewTransmitInfo() != null && !integrationTaskLivingDetailsEntity.getNewTransmitInfo().trim().equals("") && integrationTaskLivingDetailsEntity.getNewTransmitInfo().length() >= 500) { - newTransmitInfo = integrationTaskLivingDetailsEntity.getNewTransmitInfo().substring(0, 500); - } - integrationTaskLivingDetailsEntity.setRootAppNewData(rootAppNewData); - integrationTaskLivingDetailsEntity.setNewTransmitInfo(newTransmitInfo); - } else { - Assert.state(false, "不合法的newState,不能为空请传递Y或者N!"); - } - } - } +// private void updateSuccessMessage(IntegrationTaskLivingDetailsEntity integrationTaskLivingDetailsEntity) { +// if (integrationTaskLivingDetailsEntity != null) { +// if (successY.equals(integrationTaskLivingDetailsEntity.getNewState())) { +// //成功 +// String successIdentification = "success"; +// integrationTaskLivingDetailsEntity.setRootAppNewData(successIdentification); +// integrationTaskLivingDetailsEntity.setNewTransmitInfo(successIdentification); +// /** +// * integrationTaskLivingDetailsEntity.setRoot_app_new_data(JSON.toJSONString(searchPurchaseReceiptOrder)); +// * integrationTaskLivingDetailsEntity.setNew_transmit_info(cgrkApi); +// */ +// } else if (failN.equals(integrationTaskLivingDetailsEntity.getNewState())) { +// //2024年9月2日 17:09:07 如果失败,仅保留500个字符,用于平衡数据库性能 +// //2024年9月2日 17:15:19 如果该单据判断为失败,则integration_task_living_details表的root_app_new_data、new_transmit_info字段,仅保留500个长度的字符,用于平衡性能,速网、珍视名项目这一块性能很差 +// String rootAppNewData = integrationTaskLivingDetailsEntity.getRootAppNewData(); +// if (integrationTaskLivingDetailsEntity.getRootAppNewData() != null && !integrationTaskLivingDetailsEntity.getRootAppNewData().trim().equals("") && integrationTaskLivingDetailsEntity.getRootAppNewData().length() >= 500) { +// rootAppNewData = integrationTaskLivingDetailsEntity.getRootAppNewData().substring(0, 500); +// } +// String newTransmitInfo = integrationTaskLivingDetailsEntity.getNewTransmitInfo(); +// if (integrationTaskLivingDetailsEntity.getNewTransmitInfo() != null && !integrationTaskLivingDetailsEntity.getNewTransmitInfo().trim().equals("") && integrationTaskLivingDetailsEntity.getNewTransmitInfo().length() >= 500) { +// newTransmitInfo = integrationTaskLivingDetailsEntity.getNewTransmitInfo().substring(0, 500); +// } +// integrationTaskLivingDetailsEntity.setRootAppNewData(rootAppNewData); +// integrationTaskLivingDetailsEntity.setNewTransmitInfo(newTransmitInfo); +// } else { +// Assert.state(false, "不合法的newState,不能为空请传递Y或者N!"); +// } +// } +// } /** * 根据明细id查询明细信息 @@ -116,9 +172,35 @@ public class SaveOrUpdateBusinessLogUtil { * @author liuyang */ public IntegrationTaskLivingDetailsEntity queryIntegrationTaskLivingDetailsEntity(String integration_task_living_details_id) { - Assert.notNull(integration_task_living_details_id, "业务明细id不能为空"); - IntegrationTaskLivingDetailsEntity integrationTaskLivingDetailsEntity = iIntegrationTaskLivingDetailsDao.get(integration_task_living_details_id); + IntegrationTaskLivingDetailsEntity integrationTaskLivingDetailsEntity = new IntegrationTaskLivingDetailsEntity(); + integrationTaskLivingDetailsEntity.setId(integration_task_living_details_id); + IntegrationTaskLivingDetailsEntity integrationTaskLivingDetailsEntity1 = iIntegrationTaskLivingDetailsDao.queryEntityById(integrationTaskLivingDetailsEntity); Assert.notNull(integrationTaskLivingDetailsEntity, "根据主键id没有查询到明细信息"); - return integrationTaskLivingDetailsEntity; + return integrationTaskLivingDetailsEntity1; + } + + /** + * 根据明细id查询明细信息,成功表 integration_task_living_details_success + */ + public IntegrationTaskLivingDetailsEntity queryIntegrationTaskLivingDetailsEntityY(IntegrationTaskLivingDetailsEntity integrationTaskLivingDetailsEntity) { +// Assert.notNull(integration_task_living_details_id, "业务明细id不能为空"); +// IntegrationTaskLivingDetailsEntity integrationTaskLivingDetailsEntity = new IntegrationTaskLivingDetailsEntity(); +// integrationTaskLivingDetailsEntity.setId(integration_task_living_details_id); +// integrationTaskLivingDetailsEntity.setNewState("Y");//查询成功表 + IntegrationTaskLivingDetailsEntity integrationTaskLivingDetailsEntity1 = iIntegrationTaskLivingDetailsDao.queryEntity(integrationTaskLivingDetailsEntity); + Assert.notNull(integrationTaskLivingDetailsEntity1, "根据主键id没有查询到明细信息"); + return integrationTaskLivingDetailsEntity1; + } + /** + * 根据明细id查询明细信息,错误表 integration_task_living_details + */ + public IntegrationTaskLivingDetailsEntity queryIntegrationTaskLivingDetailsEntityN(String integration_task_living_details_id) { + Assert.notNull(integration_task_living_details_id, "业务明细id不能为空"); + IntegrationTaskLivingDetailsEntity integrationTaskLivingDetailsEntity = new IntegrationTaskLivingDetailsEntity(); + integrationTaskLivingDetailsEntity.setId(integration_task_living_details_id); + integrationTaskLivingDetailsEntity.setNewState("N");//查询失败表 + IntegrationTaskLivingDetailsEntity integrationTaskLivingDetailsEntity1 = iIntegrationTaskLivingDetailsDao.queryEntity(integrationTaskLivingDetailsEntity); + Assert.notNull(integrationTaskLivingDetailsEntity1, "根据主键id没有查询到明细信息"); + return integrationTaskLivingDetailsEntity1; } }