diff --git a/gradle.properties b/gradle.properties index 9536b6f..f08d788 100644 --- a/gradle.properties +++ b/gradle.properties @@ -38,7 +38,7 @@ application_version=1.0.1 platform_group=io.sc platform_version=8.1.44 platform_plugin_version=8.1.44 -platform_core_frontend_version=8.1.281 +platform_core_frontend_version=8.1.287 ########################################################### # product dependencies version @@ -53,6 +53,7 @@ asciidoctor_version=3.3.2 commons_fileupload_version=1.4 commons_io_version=2.11.0 cxf_version=3.2.7 + dm_hibernate_version=8.1.2.192 flowable_version=6.8.0 guava_version=31.1-jre diff --git a/irbs.cust.rating/src/main/java/irbs/cust/rating/controller/CompanyRatingProcessController.java b/irbs.cust.rating/src/main/java/irbs/cust/rating/controller/CompanyRatingProcessController.java index c3993c6..9c14f31 100644 --- a/irbs.cust.rating/src/main/java/irbs/cust/rating/controller/CompanyRatingProcessController.java +++ b/irbs.cust.rating/src/main/java/irbs/cust/rating/controller/CompanyRatingProcessController.java @@ -24,12 +24,13 @@ public class CompanyRatingProcessController { @ResponseBody public CompleteTaskResponse submit(@PathVariable("taskId") String taskId, @RequestBody ProcessProperties processProperties) throws Exception { try { - return service.submit(taskId, processProperties); + service.submit(taskId, processProperties); } catch (CompleteTaskException exception) { return CompleteTaskResponse.fromAssigneesJson(exception.getMessage()); } catch (Exception e) { e.printStackTrace(); - return new CompleteTaskResponse(); + throw e; } + return new CompleteTaskResponse(); } } diff --git a/irbs.cust.rating/src/main/java/irbs/cust/rating/jpa/repository/MainScaleConfigRepository.java b/irbs.cust.rating/src/main/java/irbs/cust/rating/jpa/repository/MainScaleConfigRepository.java index 8a9b5a4..aa30317 100644 --- a/irbs.cust.rating/src/main/java/irbs/cust/rating/jpa/repository/MainScaleConfigRepository.java +++ b/irbs.cust.rating/src/main/java/irbs/cust/rating/jpa/repository/MainScaleConfigRepository.java @@ -2,6 +2,8 @@ package irbs.cust.rating.jpa.repository; import io.sc.platform.orm.repository.DaoRepository; import irbs.cust.rating.jpa.entity.MainScaleConfig; +import org.springframework.data.jpa.repository.Query; +import org.springframework.data.repository.query.Param; import java.util.List; @@ -10,4 +12,7 @@ public interface MainScaleConfigRepository extends DaoRepository findByVersionId(String versionId); + +// @Query(value = "from MainScaleConfig msc JOIN MainScaleVersion v where v.status = :custNo and ms.level = :processStatus ") +// void deleteByCustNoAndProcessStatus(@Param("custNo") String custNo, @Param("processStatus") String processStatus); } diff --git a/irbs.cust.rating/src/main/java/irbs/cust/rating/jpa/repository/MainScaleVersionRepository.java b/irbs.cust.rating/src/main/java/irbs/cust/rating/jpa/repository/MainScaleVersionRepository.java index 4e989aa..717b7dd 100644 --- a/irbs.cust.rating/src/main/java/irbs/cust/rating/jpa/repository/MainScaleVersionRepository.java +++ b/irbs.cust.rating/src/main/java/irbs/cust/rating/jpa/repository/MainScaleVersionRepository.java @@ -8,4 +8,6 @@ import java.util.List; public interface MainScaleVersionRepository extends DaoRepository { List findByStatusAndCode(String status, String code); + + List findByStatus(String status); } diff --git a/irbs.cust.rating/src/main/java/irbs/cust/rating/service/CompanyRatingProcessService.java b/irbs.cust.rating/src/main/java/irbs/cust/rating/service/CompanyRatingProcessService.java index af95d71..d7f181b 100644 --- a/irbs.cust.rating/src/main/java/irbs/cust/rating/service/CompanyRatingProcessService.java +++ b/irbs.cust.rating/src/main/java/irbs/cust/rating/service/CompanyRatingProcessService.java @@ -11,5 +11,5 @@ import io.sc.platform.flowable.support.CompleteTaskResponse; */ public interface CompanyRatingProcessService { - public CompleteTaskResponse submit(String taskId, ProcessProperties processProperties) throws CompleteTaskException, Exception; + public void submit(String taskId, ProcessProperties processProperties) throws Exception; } diff --git a/irbs.cust.rating/src/main/java/irbs/cust/rating/service/impl/CompanyRatingProcessServiceImpl.java b/irbs.cust.rating/src/main/java/irbs/cust/rating/service/impl/CompanyRatingProcessServiceImpl.java index 2079ff4..3de2ffe 100644 --- a/irbs.cust.rating/src/main/java/irbs/cust/rating/service/impl/CompanyRatingProcessServiceImpl.java +++ b/irbs.cust.rating/src/main/java/irbs/cust/rating/service/impl/CompanyRatingProcessServiceImpl.java @@ -66,62 +66,53 @@ public class CompanyRatingProcessServiceImpl implements CompanyRatingProcessServ @Override @Transactional - public CompleteTaskResponse submit(String taskId, ProcessProperties processProperties) throws CompleteTaskException, Exception { - try { - Task task = processEngine.getTaskService().createTaskQuery().taskId(taskId).singleResult(); - Map transientVariables = processProperties.getTransientVariables(); - Integer opaVal = (Integer) transientVariables.get("opaVal"); - ProcessInstance instance = processEngine.getRuntimeService().createProcessInstanceQuery().processInstanceId(task.getProcessInstanceId()).singleResult(); - String suggestLevel = null; - if (transientVariables.containsKey("suggestLevel")) { - suggestLevel = (String) transientVariables.get("suggestLevel"); - } + public void submit(String taskId, ProcessProperties processProperties) throws Exception { + Task task = processEngine.getTaskService().createTaskQuery().taskId(taskId).singleResult(); + Map transientVariables = processProperties.getTransientVariables(); + Integer opaVal = (Integer) transientVariables.get("opaVal"); - // TODO 当前流程通过读取流程设计中任务节点的输出线加载页面按钮,而实际业务存在需要根据业务信息判断下一步提交的节点。 - List variableWrapperList = processQueryService.queryVariables(task.getProcessInstanceId()); - Integer lastGoback = -1; - Boolean flag = false; - for (VariableWrapper variableWrapper : variableWrapperList) { - if (variableWrapper.getName().equals(TaskVariable.LAST_GOBACK)) { - lastGoback = Integer.parseInt(variableWrapper.getText()); - } - } - if (opaVal == RatingGoBackType.JUDGMENT.code()) { - transientVariables.put("submit", lastGoback); - } else if (opaVal == RatingGoBackType.SUBMIT_HEAD.code() && isNeedHeadBankApprove(suggestLevel, instance.getBusinessKey())) { - transientVariables.put("submit", RatingGoBackType.SUBMIT.code()); - flag = true; - } else if (opaVal == RatingGoBackType.SUBMIT_HEAD.code()) { - transientVariables.put("submit", RatingGoBackType.APPROVE.code()); + ProcessInstance instance = processEngine.getRuntimeService().createProcessInstanceQuery().processInstanceId(task.getProcessInstanceId()).singleResult(); + String suggestLevel = null; + if (transientVariables.containsKey("suggestLevel")) { + suggestLevel = (String) transientVariables.get("suggestLevel"); + } + + // TODO 当前流程通过读取流程设计中任务节点的输出线加载页面按钮,而实际业务存在需要根据业务信息判断下一步提交的节点。 + List variableWrapperList = processQueryService.queryVariables(task.getProcessInstanceId()); + Integer lastGoback = -1; + Boolean flag = false; + for (VariableWrapper variableWrapper : variableWrapperList) { + if (variableWrapper.getName().equals(TaskVariable.LAST_GOBACK)) { + lastGoback = Integer.parseInt(variableWrapper.getText()); } - Map variables = processProperties.getVariables(); - variables.put(TaskVariable.LAST_GOBACK, transientVariables.get("goback").toString()); - processOperationService.completeTask(taskId, variables, transientVariables); + } + if (opaVal == RatingGoBackType.JUDGMENT.code()) { + transientVariables.put("submit", lastGoback); + } else if (opaVal == RatingGoBackType.SUBMIT_HEAD.code() && isNeedHeadBankApprove(suggestLevel, instance.getBusinessKey())) { + transientVariables.put("submit", RatingGoBackType.SUBMIT.code()); + flag = true; + } else if (opaVal == RatingGoBackType.SUBMIT_HEAD.code()) { + transientVariables.put("submit", RatingGoBackType.APPROVE.code()); + } + Map variables = processProperties.getVariables(); + variables.put(TaskVariable.LAST_GOBACK, transientVariables.get("goback").toString()); + processOperationService.completeTask(taskId, variables, transientVariables); - if (opaVal == RatingGoBackType.REJECT.code()) { - companyRatingService.reject(instance.getBusinessKey(), processProperties.getData()); - } else if (opaVal == RatingGoBackType.SUBMIT_HEAD.code()) { - if (flag) { - companyRatingService.submit(instance.getBusinessKey(), processProperties.getData()); - } else { - companyRatingService.approve(instance.getBusinessKey(), processProperties.getData()); - } - } else if(opaVal < 0){ - companyRatingService.backStart(instance.getBusinessKey(), processProperties.getData()); - } else if(opaVal == RatingGoBackType.APPROVE.code()) { - companyRatingService.approve(instance.getBusinessKey(), processProperties.getData()); - } else { + if (opaVal == RatingGoBackType.REJECT.code()) { + companyRatingService.reject(instance.getBusinessKey(), processProperties.getData()); + } else if (opaVal == RatingGoBackType.SUBMIT_HEAD.code()) { + if (flag) { companyRatingService.submit(instance.getBusinessKey(), processProperties.getData()); + } else { + companyRatingService.approve(instance.getBusinessKey(), processProperties.getData()); } - //companyRatingService.back(instance.getBusinessKey()); - - return new CompleteTaskResponse(); - } catch (CompleteTaskException exception) { - TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); - return CompleteTaskResponse.fromAssigneesJson(exception.getMessage()); - } catch (Exception exception) { - throw exception; + } else if(opaVal < 0){ + companyRatingService.backStart(instance.getBusinessKey(), processProperties.getData()); + } else if(opaVal == RatingGoBackType.APPROVE.code()) { + companyRatingService.approve(instance.getBusinessKey(), processProperties.getData()); + } else { + companyRatingService.submit(instance.getBusinessKey(), processProperties.getData()); } } diff --git a/irbs.cust.rating/src/main/java/irbs/cust/rating/service/impl/CompanyRatingServiceImpl.java b/irbs.cust.rating/src/main/java/irbs/cust/rating/service/impl/CompanyRatingServiceImpl.java index 2420874..3d81281 100644 --- a/irbs.cust.rating/src/main/java/irbs/cust/rating/service/impl/CompanyRatingServiceImpl.java +++ b/irbs.cust.rating/src/main/java/irbs/cust/rating/service/impl/CompanyRatingServiceImpl.java @@ -14,6 +14,7 @@ import irbs.cust.rating.enums.*; import irbs.cust.rating.jpa.entity.*; import irbs.cust.rating.jpa.repository.CompanyRatingRepository; import irbs.cust.rating.jpa.repository.MainScaleConfigRepository; +import irbs.cust.rating.jpa.repository.MainScaleVersionRepository; import irbs.cust.rating.jpa.vo.CompanyRatingVo; import irbs.cust.rating.service.*; import irbs.defaultManager.service.DefaultCognizanceService; @@ -59,6 +60,8 @@ public class CompanyRatingServiceImpl extends DaoServiceImpl pageQuery(QueryParameter queryParameter) throws Exception { @@ -733,7 +736,9 @@ public class CompanyRatingServiceImpl extends DaoServiceImpl versionList = mainScaleVersionRepository.findByStatus(VersionEnum.RELEASE.name()); + rating.setPd(mainScaleConfigRepository.findByVersionId(versionList.get(0).getId()).get(0).getPd()); + getRepository().save(rating); sendRatingStatus(rating); } diff --git a/irbs.cust.rating/src/main/java/irbs/cust/rating/service/impl/HomeServiceImpl.java b/irbs.cust.rating/src/main/java/irbs/cust/rating/service/impl/HomeServiceImpl.java index 892356e..4d517be 100644 --- a/irbs.cust.rating/src/main/java/irbs/cust/rating/service/impl/HomeServiceImpl.java +++ b/irbs.cust.rating/src/main/java/irbs/cust/rating/service/impl/HomeServiceImpl.java @@ -70,8 +70,8 @@ public class HomeServiceImpl implements HomeService { @Override public List getRatingLevelExposureList() throws Exception { String querySql1 = "select p.FINAL_LEVEL,count(*) FINAL_NUMBER from (" + - "select distinct(cust_no) as cust_no,FINAL_LEVEL from NS_COMPANY_RATING " + - "WHERE cust_no is not null and FINAL_LEVEL IS NOT NULL AND RATING_STATUS = '"+ RatingStatus.EFFECTIVE.name() +"' "; + "select distinct(CUSTOMER_ID) as cust_no,FINAL_LEVEL from NS_COMPANY_RATING " + + "WHERE CUSTOMER_ID is not null and FINAL_LEVEL IS NOT NULL AND RATING_STATUS = '"+ RatingStatus.EFFECTIVE.name() +"' "; String querySql2 = "select 'D' FINAL_LEVEL, COUNT(*) FINAL_NUMBER from (" + "select distinct(cust_no) as cust_no from P_IRS_DEFAULT_COGNIZANCE " + "where ((VALID = '1' and DEFAULT_TYPE ='02') or (VALID <> '0' and DEFAULT_TYPE = '01')) and cust_no is not null "; diff --git a/irbs.cust.rating/src/main/resources/liquibase/20240321_CUST_RATING_DDL.xml b/irbs.cust.rating/src/main/resources/liquibase/20240321_CUST_RATING_DDL.xml index b6ecb4d..0ede3e3 100644 --- a/irbs.cust.rating/src/main/resources/liquibase/20240321_CUST_RATING_DDL.xml +++ b/irbs.cust.rating/src/main/resources/liquibase/20240321_CUST_RATING_DDL.xml @@ -60,7 +60,7 @@ - + @@ -111,7 +111,7 @@ - + @@ -160,7 +160,7 @@ - + @@ -180,7 +180,7 @@ - + @@ -201,7 +201,7 @@ - + @@ -230,7 +230,7 @@ - + @@ -318,7 +318,7 @@ - + @@ -390,7 +390,7 @@ - + @@ -407,7 +407,7 @@ - + diff --git a/irbs.frontend/package.json b/irbs.frontend/package.json index 69dd480..cbb4424 100644 --- a/irbs.frontend/package.json +++ b/irbs.frontend/package.json @@ -78,7 +78,7 @@ "luckyexcel": "1.0.1", "mockjs": "1.1.0", "pinia": "2.1.7", - "platform-core": "8.1.281", + "platform-core": "8.1.287", "quasar": "2.15.4", "tailwindcss": "3.4.4", "vue": "3.4.31",