From 810b07cd238377e7a18e523cfe2094d8a3272ab8 Mon Sep 17 00:00:00 2001 From: lishuai <260038442@qq.com> Date: 星期日, 24 十二月 2023 23:03:36 +0800 Subject: [PATCH] 配置信息对接调整提交 --- server/dmvisit_service/src/main/java/com/doumee/service/system/impl/SystemDictDataServiceImpl.java | 119 +++++++++++++++++++++++++++++------------------------------ 1 files changed, 58 insertions(+), 61 deletions(-) diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/system/impl/SystemDictDataServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/system/impl/SystemDictDataServiceImpl.java index d27b353..1a7911d 100644 --- a/server/dmvisit_service/src/main/java/com/doumee/service/system/impl/SystemDictDataServiceImpl.java +++ b/server/dmvisit_service/src/main/java/com/doumee/service/system/impl/SystemDictDataServiceImpl.java @@ -1,13 +1,13 @@ package com.doumee.service.system.impl; +import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.doumee.core.constants.ResponseStatus; import com.doumee.core.exception.BusinessException; import com.doumee.core.model.LoginUserInfo; import com.doumee.core.utils.Constants; -import com.doumee.dao.admin.request.LaborConfigDTO; -import com.doumee.dao.admin.request.VisitConfigDTO; +import com.doumee.dao.admin.request.*; import com.doumee.dao.system.SystemDictMapper; import com.doumee.dao.system.model.SystemDict; import com.fasterxml.jackson.core.JsonProcessingException; @@ -132,10 +132,6 @@ public VisitConfigDTO getVisitConfigDTO() { try { - String jasonStr = Constants.toUnderlineJSONString(new VisitConfigDTO()); - JSONObject parse = (JSONObject) JSONObject.parse(jasonStr); - List<String> collect = parse.entrySet().stream().map(s -> s.getKey().toUpperCase()).collect(Collectors.toList()); - QueryWrapper<SystemDict> systemDictQuery = new QueryWrapper<>(); systemDictQuery.lambda() .eq(SystemDict::getDeleted,Boolean.FALSE) @@ -147,18 +143,19 @@ } QueryWrapper<SystemDictData> wrapper = new QueryWrapper<>(); wrapper.lambda() - .eq(SystemDictData::getDictId,systemDict.getId()) - .in(SystemDictData::getLabel,collect); - List<SystemDictData> systemDictData = systemDictDataMapper.selectList(wrapper); - if (CollectionUtils.isEmpty(systemDictData)){ + .eq(SystemDictData::getDictId,systemDict.getId()); + List<SystemDictData> systemDictDatas = systemDictDataMapper.selectList(wrapper); + if (CollectionUtils.isEmpty(systemDictDatas)){ throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(),"瀛楀吀鍊间笉瀛樺湪"); } - systemDictData.forEach(s->{ - parse.put(s.getLabel().toLowerCase(),s.getCode()); - }); - String s = parse.toJSONString(); - VisitConfigDTO miniProgrammeDTO = Constants.toSnakeObject(s, VisitConfigDTO.class); - return miniProgrammeDTO; + VisitConfigDTO visitConfigDTO = null; + for (SystemDictData obj:systemDictDatas) { + visitConfigDTO = new VisitConfigDTO(); + visitConfigDTO.setVisitConfigParam(JSONObject.parseObject(obj.getCode(),VisitConfigParam.class)); + visitConfigDTO.setDescription(obj.getRemark()); + visitConfigDTO.setTheme(obj.getLabel()); + } + return visitConfigDTO; } catch (Exception e) { throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀛楀吀鍊艰В鏋愭湁璇�"); } @@ -179,26 +176,30 @@ QuerySystemDictDataDTO dictData = new QuerySystemDictDataDTO(); dictData.setDictId((systemDict.getId())); List<SystemDictDataListVO> systemDictDataListVOS = systemDictDataMapper.selectManageList(dictData); + SystemDictData systemDictData = getSystemDictDataListVO(systemDict); + systemDictData.setCode(JSON.toJSONString(miniProgrammeDTO.getVisitConfigParam())); + systemDictData.setLabel(miniProgrammeDTO.getTheme()); + systemDictData.setRemark(miniProgrammeDTO.getDescription()); if(null != systemDictDataListVOS && systemDictDataListVOS.size() > 0) { - LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); - SystemDictData systemDictData = new SystemDictData(); - systemDictData.setDictId(systemDict.getId()); - systemDictData.setCode(JSONObject.toJSONString(miniProgrammeDTO.getVisitConfigParam())); - systemDictData.setDisabled(true); - systemDictData.setSort(Constants.ZERO); - systemDictData.setLabel(miniProgrammeDTO.getTheme()); - systemDictData.setRemark(miniProgrammeDTO.getDescription()); - systemDictData.setCreateTime(new Date()); - systemDictData.setUpdateTime(new Date()); - systemDictData.setCreateUser(loginUserInfo.getId()); - systemDictData.setUpdateUser(loginUserInfo.getId()); - if(null == systemDictDataListVOS.get(0).getId()) { - systemDictDataMapper.insert(systemDictData); - }else { - systemDictData.setId(systemDictDataListVOS.get(0).getId()); - systemDictDataMapper.updateById(systemDictData); - } + systemDictData.setId(systemDictDataListVOS.get(0).getId()); + systemDictDataMapper.updateById(systemDictData); + }else { + systemDictDataMapper.insert(systemDictData); } + } + + private SystemDictData getSystemDictDataListVO(SystemDict systemDict) { + LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); + SystemDictData systemDictData = new SystemDictData(); + systemDictData.setDictId(systemDict.getId()); + systemDictData.setDisabled(true); + systemDictData.setSort(Constants.ONE); + systemDictData.setCreateTime(new Date()); + systemDictData.setUpdateTime(new Date()); + systemDictData.setCreateUser(loginUserInfo.getId()); + systemDictData.setUpdateUser(loginUserInfo.getId()); + + return systemDictData; } @Override @@ -220,18 +221,16 @@ } QueryWrapper<SystemDictData> wrapper = new QueryWrapper<>(); wrapper.lambda() - .eq(SystemDictData::getDictId,systemDict.getId()) - .in(SystemDictData::getLabel,collect); - List<SystemDictData> systemDictData = systemDictDataMapper.selectList(wrapper); - if (CollectionUtils.isEmpty(systemDictData)){ - throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(),"瀛楀吀鍊间笉瀛樺湪"); + .eq(SystemDictData::getDictId,systemDict.getId()); + List<SystemDictData> systemDictDatas = systemDictDataMapper.selectList(wrapper); + LaborConfigDTO laborConfigDTO = null; + for (SystemDictData obj:systemDictDatas) { + laborConfigDTO = new LaborConfigDTO(); + laborConfigDTO.setLaborConfigParam(JSONObject.parseObject(obj.getCode(), LaborConfigParam.class)); + laborConfigDTO.setDescription(obj.getRemark()); + laborConfigDTO.setTheme(obj.getLabel()); } - systemDictData.forEach(s->{ - parse.put(s.getLabel().toLowerCase(),s.getCode()); - }); - String s = parse.toJSONString(); - LaborConfigDTO miniProgrammeDTO = Constants.toSnakeObject(s, LaborConfigDTO.class); - return miniProgrammeDTO; + return laborConfigDTO; } catch (Exception e) { throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀛楀吀鍊艰В鏋愭湁璇�"); } @@ -239,29 +238,27 @@ @Override public void updateLaborConfigDTO(LaborConfigDTO miniProgrammeDTO) { - try { - QueryWrapper<SystemDict> systemDictQuery = new QueryWrapper<>(); systemDictQuery.lambda() .eq(SystemDict::getDeleted,Boolean.FALSE) - .eq(SystemDict::getCode,Constants.VISIT_CONFIG); + .eq(SystemDict::getCode,Constants.LABOR_CONFIG); SystemDict systemDict = systemDictMapper.selectOne(systemDictQuery); if (Objects.isNull(systemDict)){ throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(),"瀛楀吀涓嶅瓨鍦�"); } - String jasonStr = Constants.toUnderlineJSONString(miniProgrammeDTO); - JSONObject parse = (JSONObject) JSONObject.parse(jasonStr); - parse.entrySet().forEach(s->{ - UpdateWrapper<SystemDictData> wrapper = new UpdateWrapper<>(); - wrapper.lambda() - .eq(SystemDictData::getDictId,systemDict.getId()) - .eq(SystemDictData::getLabel,s.getKey().toUpperCase()) - .set(SystemDictData::getCode,s.getValue()); - systemDictDataMapper.update(null,wrapper); - }); - } catch (JsonProcessingException e) { - throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀛楀吀鍊艰В鏋愭湁璇�"); - } + QuerySystemDictDataDTO dictData = new QuerySystemDictDataDTO(); + dictData.setDictId((systemDict.getId())); + List<SystemDictDataListVO> systemDictDataListVOS = systemDictDataMapper.selectManageList(dictData); + SystemDictData systemDictData = getSystemDictDataListVO(systemDict); + systemDictData.setCode(JSON.toJSONString(miniProgrammeDTO.getLaborConfigParam())); + systemDictData.setLabel(miniProgrammeDTO.getTheme()); + systemDictData.setRemark(miniProgrammeDTO.getDescription()); + if(null != systemDictDataListVOS && systemDictDataListVOS.size() > 0) { + systemDictData.setId(systemDictDataListVOS.get(0).getId()); + systemDictDataMapper.updateById(systemDictData); + }else { + systemDictDataMapper.insert(systemDictData); + } } } -- Gitblit v1.9.3