|
|
@@ -0,0 +1,124 @@
|
|
|
+package com.jzg.quotation.summary.service.impl;
|
|
|
+
|
|
|
+
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import com.jzg.commons.constants.dict.EnabledEnum;
|
|
|
+import com.jzg.commons.entity.dto.SysQueryVehicleConfigDTO;
|
|
|
+import com.jzg.commons.entity.dto.SysQueryVehicleConfigQueryPageVo;
|
|
|
+import com.jzg.commons.entity.po.SysQueryVehicleConfig;
|
|
|
+import com.jzg.commons.entity.po.SysQueryVehicleUrl;
|
|
|
+import com.jzg.commons.entity.vo.SysQueryVehicleConfigQueryVo;
|
|
|
+import com.jzg.commons.entity.vo.SysQueryVehicleConfigSaveVo;
|
|
|
+import com.jzg.commons.util.AssertionUtils;
|
|
|
+import com.jzg.commons.util.StringUtils;
|
|
|
+import com.jzg.quotation.summary.mapper.SysQueryVehicleConfigMapper;
|
|
|
+import com.jzg.quotation.summary.service.SysQueryVehicleConfigService;
|
|
|
+import com.jzg.quotation.summary.service.SysQueryVehicleUrlService;
|
|
|
+import jakarta.annotation.Resource;
|
|
|
+import lombok.RequiredArgsConstructor;
|
|
|
+import org.apache.commons.lang3.ObjectUtils;
|
|
|
+import org.springframework.beans.BeanUtils;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
+
|
|
|
+import java.util.List;
|
|
|
+import java.util.Objects;
|
|
|
+
|
|
|
+/**
|
|
|
+ * @author Administrator
|
|
|
+ * @description 针对表【sys_query_vehicle_config(车型查询配置信息)】的数据库操作Service实现
|
|
|
+ * @createDate 2024-08-16 10:20:52
|
|
|
+ */
|
|
|
+@Service
|
|
|
+@RequiredArgsConstructor
|
|
|
+public class SysQueryVehicleConfigServiceImpl extends ServiceImpl<SysQueryVehicleConfigMapper, SysQueryVehicleConfig> implements SysQueryVehicleConfigService {
|
|
|
+
|
|
|
+ @Resource
|
|
|
+ private SysQueryVehicleUrlService sysQueryVehicleUrlService;
|
|
|
+
|
|
|
+ @Override
|
|
|
+ @Transactional
|
|
|
+ public void disposition(SysQueryVehicleConfigSaveVo sysQueryVehicleConfigSaveVo) {
|
|
|
+ SysQueryVehicleConfigSaveVo.SysQueryVehicleConfigDTO sysQueryVehicleConfigDTO = sysQueryVehicleConfigSaveVo.getSysQueryVehicleConfigDTO();
|
|
|
+
|
|
|
+ // 保证项目中只能出险一个开启的车险配置
|
|
|
+ boolean b1 = updateEnabled(sysQueryVehicleConfigDTO.getEnabled());
|
|
|
+
|
|
|
+ SysQueryVehicleConfig sysQueryVehicleConfig = sysQueryVehicleConfigDTO.toSysQueryVehicleConfig();
|
|
|
+ boolean save = save(sysQueryVehicleConfig);
|
|
|
+ boolean b = sysQueryVehicleUrlService.saveVehicleUrlDTOs(sysQueryVehicleConfig.getId(), sysQueryVehicleConfigSaveVo.getSysQueryVehicleUrlDTOList());
|
|
|
+ AssertionUtils.isSucceed(save && b && b1, "配置信息保存失败");
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Page<SysQueryVehicleConfig> inquire(SysQueryVehicleConfigQueryPageVo sysQueryVehicleConfigQueryVo) {
|
|
|
+ Page page = baseMapper.selectPage(sysQueryVehicleConfigQueryVo.getPage(), new LambdaQueryWrapper<>(SysQueryVehicleConfig.class)
|
|
|
+ .eq(StringUtils.isNotEmpty(sysQueryVehicleConfigQueryVo.getCompanyId()), SysQueryVehicleConfig::getCompanyId, sysQueryVehicleConfigQueryVo.getCompanyId())
|
|
|
+ .eq(ObjectUtils.isNotEmpty(sysQueryVehicleConfigQueryVo.getEnabled()), SysQueryVehicleConfig::getEnabled, sysQueryVehicleConfigQueryVo.getEnabled()));
|
|
|
+ return page;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ @Transactional
|
|
|
+ public void deleteVehicleConfig(Integer id) {
|
|
|
+ // 删除配置信息
|
|
|
+ boolean b = removeById(id);
|
|
|
+ // 删除配置链接信息
|
|
|
+ boolean remove = sysQueryVehicleUrlService.deleteByConfigId(id);
|
|
|
+ AssertionUtils.isSucceed(remove && b, "配置信息删除失败");
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ @Transactional
|
|
|
+ public void modify(Integer id, SysQueryVehicleConfigSaveVo sysQueryVehicleConfigSaveVo) {
|
|
|
+ // 修改配置信息
|
|
|
+ SysQueryVehicleConfig sysQueryVehicleConfig = getByIdExist(id, "查询配置信息不存在");
|
|
|
+ BeanUtils.copyProperties(sysQueryVehicleConfigSaveVo.getSysQueryVehicleConfigDTO(), sysQueryVehicleConfig);
|
|
|
+
|
|
|
+ // 保证项目中只能出险一个开启的车险配置
|
|
|
+ boolean b = updateEnabled(sysQueryVehicleConfigSaveVo.getSysQueryVehicleConfigDTO().getEnabled());
|
|
|
+
|
|
|
+ sysQueryVehicleConfig.setId(id);
|
|
|
+ boolean update = updateById(sysQueryVehicleConfig);
|
|
|
+
|
|
|
+ // 删除并添加
|
|
|
+ boolean remove = sysQueryVehicleUrlService.deleteByConfigId(id);
|
|
|
+ // 批量添加配置信息
|
|
|
+ boolean saveBatch = sysQueryVehicleUrlService.saveVehicleUrlDTOs(id, sysQueryVehicleConfigSaveVo.getSysQueryVehicleUrlDTOList());
|
|
|
+ AssertionUtils.isSucceed(update && remove && saveBatch && b, "配置信息修改失败");
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public SysQueryVehicleConfigQueryVo queryById(Integer id) {
|
|
|
+ SysQueryVehicleConfig sysQueryVehicleConfig = getByIdExist(id, "查询配置信息不存在");
|
|
|
+ SysQueryVehicleConfigQueryVo sysQueryVehicleConfigQueryDTO = new SysQueryVehicleConfigQueryVo();
|
|
|
+ sysQueryVehicleConfigQueryDTO.setSysQueryVehicleConfig(sysQueryVehicleConfig);
|
|
|
+ List<SysQueryVehicleUrl> list = sysQueryVehicleUrlService.lambdaQuery().eq(SysQueryVehicleUrl::getConfigId, id).list();
|
|
|
+ sysQueryVehicleConfigQueryDTO.setSysQueryVehicleUrlList(list);
|
|
|
+ return sysQueryVehicleConfigQueryDTO;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public SysQueryVehicleConfigDTO getByType(String type) {
|
|
|
+ SysQueryVehicleConfigDTO sysQueryVehicleConfigDTO = baseMapper.getByType(type);
|
|
|
+ if(ObjectUtils.isEmpty(sysQueryVehicleConfigDTO)) {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ return sysQueryVehicleConfigDTO;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ @Transactional
|
|
|
+ public void openOne(Integer id) {
|
|
|
+ SysQueryVehicleConfig sysQueryVehicleConfig = getByIdExist(id, "查询配置信息不存在");
|
|
|
+ Integer enabled = sysQueryVehicleConfig.getEnabled();
|
|
|
+ Integer i = Objects.equals(EnabledEnum.EE_1.getCode(), enabled) ? EnabledEnum.EE_0.getCode() : EnabledEnum.EE_1.getCode();
|
|
|
+ boolean b = updateEnabled(i);
|
|
|
+ sysQueryVehicleConfig.setEnabled(i);
|
|
|
+ boolean b1 = updateById(sysQueryVehicleConfig);
|
|
|
+ AssertionUtils.isSucceed(b1 && b, "成功");
|
|
|
+ }
|
|
|
+}
|
|
|
+
|