From 39f8fb5886475604b6a9b6d99afe53ec730a293b Mon Sep 17 00:00:00 2001 From: “djh” <“3298565835@qq.com”> Date: 星期四, 31 十月 2024 14:31:20 +0800 Subject: [PATCH] 修改题库推送接口 --- exam-system/src/main/java/com/gkhy/exam/institutionalaccess/service/serviceImpl/TripartiteInterfaceServiceImpl.java | 62 ++++++++++++++++++------------ 1 files changed, 37 insertions(+), 25 deletions(-) diff --git a/exam-system/src/main/java/com/gkhy/exam/institutionalaccess/service/serviceImpl/TripartiteInterfaceServiceImpl.java b/exam-system/src/main/java/com/gkhy/exam/institutionalaccess/service/serviceImpl/TripartiteInterfaceServiceImpl.java index 55b849e..e6d9fff 100644 --- a/exam-system/src/main/java/com/gkhy/exam/institutionalaccess/service/serviceImpl/TripartiteInterfaceServiceImpl.java +++ b/exam-system/src/main/java/com/gkhy/exam/institutionalaccess/service/serviceImpl/TripartiteInterfaceServiceImpl.java @@ -69,36 +69,48 @@ private ThCertService certService; @Override - public boolean receiveQuestionBank(JSONObject jsonObject) throws Exception { + public AjaxResult receiveQuestionBank(JSONObject jsonObject) throws Exception { InstitutionUser institutionUser = ThreeInContextHolder.getContext(); - ThQuestionBankReqDTO questionBankReqDTO = decryptData(jsonObject, new TypeReference<ThQuestionBankReqDTO>() {},"题库数据"); - if(questionBankReqDTO==null){ + List<ThQuestionBankReqDTO> questionBankReqDTO = decryptData(jsonObject, new TypeReference<List<ThQuestionBankReqDTO>>() {},"题库数据"); + if(CollectionUtils.isEmpty(questionBankReqDTO)){ throw new BusinessException(this.getClass(),ResultConstants.THREE_INSTITUTION_PARAMM_NULL,"题库数据不可为空"); } - String valdateMessage=ValidatorUtils.validateFast(questionBankReqDTO); - if(!StringUtils.isEmpty(valdateMessage)){ - throw new BusinessException(this.getClass(), ResultConstants.THREE_INSTITUTION_PARAMM_NULL,valdateMessage); + List<ThErrorDataRespDTO> errorDataRespDTOS = new ArrayList<>(); + List<ThQuestionBankReqDTO> thQuestionBankReqDTOS = new ArrayList<>(); + for (ThQuestionBankReqDTO thQuestionBankReqDTO : questionBankReqDTO) { + String valdateMessage=ValidatorUtils.validateFast(thQuestionBankReqDTO); + if(!StringUtils.isEmpty(valdateMessage)){ +// throw new BusinessException(this.getClass(), ResultConstants.THREE_INSTITUTION_PARAMM_NULL,valdateMessage); + errorDataRespDTOS.add(new ThErrorDataRespDTO(thQuestionBankReqDTO.getUuid(),valdateMessage)); + continue; + } + thQuestionBankReqDTOS.add(thQuestionBankReqDTO); } - //根据uuid查询数据 - ThQuestionBank qb = questionBankService.getQuestionInfoByUuid(questionBankReqDTO.getUuid()); - boolean i = true; - if(qb == null){ - //新增 - qb = new ThQuestionBank(); - BeanUtils.copyProperties(questionBankReqDTO, qb); - qb.setUuid(questionBankReqDTO.getUuid()); - qb.setInstitutionId(institutionUser.getId()); - qb.setInstitutionName(institutionUser.getInstitutionalName()); - qb.setCreateBy(institutionUser.getInstitutionalName()); - qb.setUpdateBy(institutionUser.getInstitutionalName()); - i = questionBankService.save(qb); - }else { - //修改 - BeanUtils.copyProperties(questionBankReqDTO, qb); - qb.setUpdateBy(institutionUser.getInstitutionalName()); - i = questionBankService.updateById(qb); + List<ThQuestionBank> savethQuestionBanks = new ArrayList<>(); + List<ThQuestionBank> updatethQuestionBanks = new ArrayList<>(); + for (ThQuestionBankReqDTO thQuestionBankReqDTO : thQuestionBankReqDTOS) { + //根据uuid查询数据 + ThQuestionBank qb = questionBankService.getQuestionInfoByUuid(thQuestionBankReqDTO.getUuid()); + if(qb == null){ + //新增 + qb = new ThQuestionBank(); + BeanUtils.copyProperties(thQuestionBankReqDTO, qb); + qb.setUuid(thQuestionBankReqDTO.getUuid()); + qb.setInstitutionId(institutionUser.getId()); + qb.setInstitutionName(institutionUser.getInstitutionalName()); + qb.setCreateBy(institutionUser.getInstitutionalName()); + qb.setUpdateBy(institutionUser.getInstitutionalName()); + savethQuestionBanks.add(qb); + }else { + //修改 + BeanUtils.copyProperties(thQuestionBankReqDTO, qb); + qb.setUpdateBy(institutionUser.getInstitutionalName()); + updatethQuestionBanks.add(qb); + } } - return i; + questionBankService.saveBatch(savethQuestionBanks); + questionBankService.updateBatchById(updatethQuestionBanks); + return AjaxResult.success(errorDataRespDTOS); } @Transactional -- Gitblit v1.9.2