yuxc
2023-12-14 7610df9f2155c82f4a5f554b9f4c7f0446be6261
1、图形统计用户新增图形保存功能
已添加7个文件
299 ■■■■■ 文件已修改
Source/UBCS/ubcs-service-api/ubcs-system-api/src/main/java/com/vci/ubcs/system/entity/StatisticConfig.java 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-system-api/src/main/java/com/vci/ubcs/system/vo/StatisticConfigVO.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/controller/StatisticConfigController.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/mapper/StatisticConfigMapper.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/IStatisticConfigService.java 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/StatisticConfigServiceImpl.java 104 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-system/src/main/resources/mapper/StatisticConfigMapper.xml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-system-api/src/main/java/com/vci/ubcs/system/entity/StatisticConfig.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,66 @@
package com.vci.ubcs.system.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
/**
 * ä¸»æ•°æ®ç»Ÿè®¡å¯¹è±¡
 * @author yuxc
 * @date 2023/12/13 11:13
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("PL_SYS_STATISTIC_CONFIG")
public class StatisticConfig implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * ä¸»é”®
     */
    @TableId
    private Long id;
    /**
     * ç”¨æˆ·id
     */
    private Long  userId;
    /**
     * ä¸šåŠ¡ç±»åž‹
     */
    private String btmname;
    /**
     * å›¾å½¢ids
     */
    private String chartIds;
    /**
     * åˆ›å»ºæ—¶é—´
     */
    private Date createtime;
    /**
     * åˆ›å»ºäºº
     */
    private String creator;
    /**
     * ä¿®æ”¹æ—¶é—´
     */
    private Date lastmodifytime;
    /**
     * ä¿®æ”¹äºº
     */
    private String lastmodifier;
    /**
     *
     */
    private Date ts;
}
Source/UBCS/ubcs-service-api/ubcs-system-api/src/main/java/com/vci/ubcs/system/vo/StatisticConfigVO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
package com.vci.ubcs.system.vo;
import com.vci.ubcs.system.entity.MdmCountConfig;
import com.vci.ubcs.system.entity.StatisticConfig;
import lombok.Data;
import java.util.List;
/**
 * @author ludc
 * @date 2023/10/18 8:56
 */
@Data
public class StatisticConfigVO extends StatisticConfig {
}
Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/controller/StatisticConfigController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,58 @@
package com.vci.ubcs.system.controller;
import com.vci.ubcs.system.entity.StatisticConfig;
import com.vci.ubcs.system.service.IMdmCountConfigService;
import com.vci.ubcs.system.service.IStatisticConfigService;
import com.vci.ubcs.system.vo.MdmCountConfigVO;
import io.swagger.annotations.Api;
import lombok.AllArgsConstructor;
import org.springblade.core.tenant.annotation.NonDS;
import org.springblade.core.tool.api.R;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
 * @author yuxc
 * @date 2023/12/13 15:47
 */
@NonDS
@RestController
@AllArgsConstructor
@RequestMapping("/statisticConfig")
//@Api(value = "字典", tags = "字典")
public class StatisticConfigController {
    private final IStatisticConfigService statisticConfigService;
    /**
     * ç»Ÿè®¡åˆ†æžä¿å­˜
     * @param statisticConfigs æ•°æ®ä¼ è¾“对象
     * @return æ•°æ®è¿”回
     */
    @PostMapping("/saveStatisticAnalysis")
    public R saveStatisticAnalysis(@RequestBody List<StatisticConfig> statisticConfigs){
        return statisticConfigService.saveStatisticConfig(statisticConfigs);
    }
    /**
     * ç»Ÿè®¡åˆ†æžåˆ é™¤å›¾å½¢
     * @param btmname ä¸šåŠ¡ç±»åž‹
     * @param chartId å›¾å½¢ID
     * @return æˆåŠŸä¸Žå¦
     */
    @PostMapping("/deleteChartId")
    public R deleteChartId(String btmname,String chartId){
        return statisticConfigService.deleteChartId(btmname,chartId);
    }
    /**
     * èŽ·å–ç”¨æˆ·é…ç½®çš„ä¸šåŠ¡ç±»åž‹ä¸Žç›¸å…³çš„å›¾å½¢
     * @return å›¾å½¢æ•°æ®ä¸Žä¸šåŠ¡ç±»åž‹ID
     */
    @GetMapping("/getBtmAndChartIds")
    public R getBtmAndChartIds(){
        return statisticConfigService.getBtmAndChartIds();
    }
}
Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/mapper/StatisticConfigMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,12 @@
package com.vci.ubcs.system.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.vci.ubcs.system.entity.StatisticConfig;
/**
 * @author ludc
 * @date 2023/10/17 14:53
 */
public interface StatisticConfigMapper extends BaseMapper<StatisticConfig> {
}
Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/IStatisticConfigService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,36 @@
package com.vci.ubcs.system.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.vci.ubcs.system.entity.StatisticConfig;
import org.springblade.core.tool.api.R;
import java.util.List;
/**
 * ä¸»æ•°æ®ç»Ÿè®¡é¦–页配置服务
 * @author ludc
 * @date 2023/10/17 14:44
 */
public interface IStatisticConfigService extends IService<StatisticConfig> {
    /**
     * ç»Ÿè®¡åˆ†æžä¿å­˜
     * @param statisticConfigs æ•°æ®ä¼ è¾“对象
     * @return æ•°æ®è¿”回
     */
    R saveStatisticConfig(List<StatisticConfig> statisticConfigs);
    /**
     * ç»Ÿè®¡åˆ†æžåˆ é™¤å›¾å½¢
     * @param btmname ä¸šåŠ¡ç±»åž‹
     * @param chartId å›¾å½¢ID
     * @return æˆåŠŸä¸Žå¦
     */
    R deleteChartId(String btmname, String chartId);
    /**
     * èŽ·å–ç”¨æˆ·é…ç½®çš„ä¸šåŠ¡ç±»åž‹ä¸Žç›¸å…³çš„å›¾å½¢
     * @return å›¾å½¢æ•°æ®ä¸Žä¸šåŠ¡ç±»åž‹ID
     */
    R getBtmAndChartIds();
}
Source/UBCS/ubcs-service/ubcs-system/src/main/java/com/vci/ubcs/system/service/impl/StatisticConfigServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,104 @@
package com.vci.ubcs.system.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.vci.ubcs.system.entity.MdmCountConfig;
import com.vci.ubcs.system.entity.StatisticConfig;
import com.vci.ubcs.system.mapper.MdmCountConfigMapper;
import com.vci.ubcs.system.mapper.StatisticConfigMapper;
import com.vci.ubcs.system.service.IMdmCountConfigService;
import com.vci.ubcs.system.service.IStatisticConfigService;
import com.vci.ubcs.system.vo.MdmCountConfigVO;
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func;
import org.springblade.core.tool.utils.StringUtil;
import org.springframework.stereotype.Service;
import java.util.*;
import java.util.stream.Collectors;
/**
 * ä¸»æ•°æ®ç»Ÿè®¡é¦–页配置服务
 * @author ludc
 * @date 2023/10/17 14:45
 */
@Service
public class StatisticConfigServiceImpl extends ServiceImpl<StatisticConfigMapper, StatisticConfig> implements IStatisticConfigService {
    /**
     * ç»Ÿè®¡åˆ†æžä¿å­˜
     * @param statisticConfigs æ•°æ®ä¼ è¾“对象
     * @return æ•°æ®è¿”回
     */
    @Override
    public R saveStatisticConfig(List<StatisticConfig> statisticConfigs) {
        QueryWrapper<StatisticConfig> wrapper = new QueryWrapper<>();
        wrapper.eq("user_id", AuthUtil.getUser().getUserId());
        wrapper.in("btmname", statisticConfigs.stream().map(StatisticConfig::getBtmname).collect(Collectors.toList()));
        List<StatisticConfig> list = this.list(wrapper);
        statisticConfigs.stream().map(e ->{
            list.stream().filter(lis -> e.getBtmname().equals(lis.getBtmname())).forEach(lis->{
                    e.setId(lis.getId());
                    e.setTs(new Date());
                    e.setCreator(lis.getCreator());
                    e.setCreatetime(lis.getCreatetime());
                    e.setLastmodifier(String.valueOf(AuthUtil.getUser().getUserId()));
                    e.setLastmodifytime(new Date());
            });
            if(e.getId() == null){
                e.setUserId(AuthUtil.getUser().getUserId());
                e.setTs(new Date());
                e.setCreator(String.valueOf(AuthUtil.getUser().getUserId()));
                e.setCreatetime(new Date());
                e.setLastmodifier(String.valueOf(AuthUtil.getUser().getUserId()));
                e.setLastmodifytime(new Date());
            }
            return e;
        }).collect(Collectors.toList());
        this.saveOrUpdateBatch(statisticConfigs);
        return R.success("操作成功!");
    }
    /**
     * ç»Ÿè®¡åˆ†æžåˆ é™¤å›¾å½¢
     * @param btmname ä¸šåŠ¡ç±»åž‹
     * @param chartId å›¾å½¢ID
     * @return æˆåŠŸä¸Žå¦
     */
    @Override
    public R deleteChartId(String btmname, String chartId) {
        QueryWrapper<StatisticConfig> wrapper = new QueryWrapper<>();
        wrapper.eq("user_id", AuthUtil.getUser().getUserId());
        wrapper.in("btmname",btmname);
        StatisticConfig statisticConfig = this.getOne(wrapper);
        if(StringUtil.isBlank(statisticConfig.getChartIds())){
            throw new ServiceException("未查到历史相关图形数据,请先保存!!");
        }
        List<String> chartIds = new ArrayList(Arrays.asList(statisticConfig.getChartIds().split(",")));
        chartIds.remove(chartId);
        statisticConfig.setChartIds(chartIds.stream().collect(Collectors.joining(",")));
        this.updateById(statisticConfig);
        return R.success("操作成功!!");
    }
    /**
     * èŽ·å–ç”¨æˆ·é…ç½®çš„ä¸šåŠ¡ç±»åž‹ä¸Žç›¸å…³çš„å›¾å½¢
     * @return å›¾å½¢æ•°æ®ä¸Žä¸šåŠ¡ç±»åž‹ID
     */
    @Override
    public R getBtmAndChartIds() {
        QueryWrapper<StatisticConfig> wrapper = new QueryWrapper<>();
        wrapper.eq("user_id", AuthUtil.getUser().getUserId());
        List<StatisticConfig> list = this.list(wrapper);
        Map<String, String> collect = list.stream().collect(Collectors.toMap(StatisticConfig::getBtmname, StatisticConfig::getChartIds));
        return R.data(collect);
    }
}
Source/UBCS/ubcs-service/ubcs-system/src/main/resources/mapper/StatisticConfigMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.vci.ubcs.system.mapper.StatisticConfigMapper">
</mapper>