From 64efb660b2c119c00432434c0f651f8996483f18 Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期五, 21 二月 2025 15:51:13 +0800 Subject: [PATCH] OSD大华数据格式+数据中心重点标签统计数 --- ycl-server/src/main/java/com/ycl/platform/service/impl/CalculateRuleServiceImpl.java | 121 ++++++++++++++++++++++++++++++++++++++++ 1 files changed, 121 insertions(+), 0 deletions(-) diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/CalculateRuleServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/CalculateRuleServiceImpl.java new file mode 100644 index 0000000..078814f --- /dev/null +++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/CalculateRuleServiceImpl.java @@ -0,0 +1,121 @@ +package com.ycl.platform.service.impl; + +import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ycl.platform.domain.entity.CalculateRule; +import com.ycl.platform.domain.vo.CalculateRuleCascaderVO; +import com.ycl.platform.mapper.CalculateRuleMapper; +import com.ycl.platform.mapper.TContractMapper; +import com.ycl.platform.service.ICalculateRuleService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import utils.DateUtils; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +/** + * 杩濈害瑙勫垯Service涓氬姟灞傚鐞� + * + * @author ruoyi + * @date 2024-04-01 + */ +@Service +public class CalculateRuleServiceImpl extends ServiceImpl<CalculateRuleMapper, CalculateRule> implements ICalculateRuleService { + @Autowired + private CalculateRuleMapper calculateRuleMapper; + @Autowired + private TContractMapper contractMapper; + + /** + * 鏌ヨ杩濈害瑙勫垯 + * + * @param id 杩濈害瑙勫垯涓婚敭 + * @return 杩濈害瑙勫垯 + */ + @Override + public CalculateRule selectDefaultRuleById(Long id) { + return calculateRuleMapper.selectById(id); + } + + /** + * 鏌ヨ杩濈害瑙勫垯鍒楄〃 + * + * @param calculateRule 杩濈害瑙勫垯 + * @return 杩濈害瑙勫垯 + */ + @Override + public List<CalculateRule> selectDefaultRuleList(CalculateRule calculateRule) { + return calculateRuleMapper.selectDefaultRuleList(calculateRule); + } + + /** + * 鏂板杩濈害瑙勫垯 + * + * @param calculateRule 杩濈害瑙勫垯 + * @return 缁撴灉 + */ + @Override + public int insertDefaultRule(CalculateRule calculateRule) { + calculateRule.setCreateTime(DateUtils.getNowDate()); + return calculateRuleMapper.insertDefaultRule(calculateRule); + } + + /** + * 淇敼杩濈害瑙勫垯 + * + * @param calculateRule 杩濈害瑙勫垯 + * @return 缁撴灉 + */ + @Override + public int updateDefaultRule(CalculateRule calculateRule) { + calculateRule.setUpdateTime(DateUtils.getNowDate()); + return calculateRuleMapper.updateDefaultRule(calculateRule); + } + + /** + * 鎵归噺鍒犻櫎杩濈害瑙勫垯 + * + * @param ids 闇�瑕佸垹闄ょ殑杩濈害瑙勫垯涓婚敭 + * @return 缁撴灉 + */ + @Override + public int deleteDefaultRuleByIds(Long[] ids) { + return calculateRuleMapper.deleteDefaultRuleByIds(ids); + } + + /** + * 鍒犻櫎杩濈害瑙勫垯淇℃伅 + * + * @param id 杩濈害瑙勫垯涓婚敭 + * @return 缁撴灉 + */ + @Override + public int deleteDefaultRuleById(Long id) { + return calculateRuleMapper.deleteDefaultRuleById(id); + } + + @Override + public List<CalculateRule> getRuleListByContractId(Integer contractId) { + return new LambdaQueryChainWrapper<>(calculateRuleMapper) + .eq(CalculateRule::getContractId, contractId) + .list(); + } + + @Override + public List<CalculateRuleCascaderVO> getRuleListByUnitId(Integer unitId) { + List<CalculateRuleCascaderVO> ruleListByUnitId = calculateRuleMapper.getRuleListByUnitId(unitId, DateUtils.getDate()); + Map<String, List<CalculateRuleCascaderVO>> map = ruleListByUnitId.stream().collect(Collectors.groupingBy(CalculateRuleCascaderVO::getRuleName)); + List<CalculateRuleCascaderVO> result = new ArrayList<>(); + map.forEach((str,list)->{ + CalculateRuleCascaderVO vo = new CalculateRuleCascaderVO(); + vo.setValue(str); + vo.setLabel(str); + vo.setChildren(list); + result.add(vo); + }); + return result; + } +} -- Gitblit v1.8.0