From 009e3e6fe18e3229ef1a6b2a39c9de57dd9d34bc Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期三, 31 七月 2024 15:58:38 +0800
Subject: [PATCH] 数据中心响应类调整
---
ycl-server/src/main/java/com/ycl/platform/service/impl/TContractServiceImpl.java | 53 +++++++++++++++++++----------------------------------
1 files changed, 19 insertions(+), 34 deletions(-)
diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/TContractServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/TContractServiceImpl.java
index ba2cb87..346b141 100644
--- a/ycl-server/src/main/java/com/ycl/platform/service/impl/TContractServiceImpl.java
+++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/TContractServiceImpl.java
@@ -1,6 +1,7 @@
package com.ycl.platform.service.impl;
import com.alibaba.excel.EasyExcel;
+import com.alibaba.excel.read.listener.PageReadListener;
import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
import com.alibaba.fastjson2.JSON;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -26,6 +27,7 @@
import enumeration.general.RuleDeductCategoryEnum;
import jakarta.servlet.http.HttpServletResponse;
import lombok.AllArgsConstructor;
+import lombok.SneakyThrows;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -78,7 +80,7 @@
private List<CalculateRule> getExcelData() {
ArrayList<CalculateRule> list = new ArrayList<>();
CalculateRule calculateRule1 = new CalculateRule();
- calculateRule1.setId(1L);
+ calculateRule1.setId(1);
calculateRule1.setRuleName("瑙嗛骞冲潎鍦ㄧ嚎鐜�");
calculateRule1.setRuleCondition("鈮�98%");
calculateRule1.setMax(98D);
@@ -109,7 +111,7 @@
calculateRule33.setCalcFraction(10.00);
list.add(calculateRule33);
CalculateRule calculateRule4 = new CalculateRule();
- calculateRule4.setId(2L);
+ calculateRule4.setId(2);
calculateRule4.setRuleName("鍓嶇鎰熺煡婧愭不鐞嗗伐浣�");
calculateRule4.setRuleCondition("鏃堕挓鍚屾锛堣秴杩嚶�3绉掍负涓嶅悎鏍硷級");
calculateRule4.setDeductCategory(RuleDeductCategoryEnum.MULTIPLY_POINTS_BY_QUANTITY);
@@ -118,13 +120,17 @@
CalculateRule calculateRule7 = new CalculateRule();
calculateRule7.setRuleName("鍓嶇鎰熺煡婧愭不鐞嗗伐浣�");
calculateRule7.setRuleCondition("OSD鏍囪瘑");
+ calculateRule7.setDeductCategory(RuleDeductCategoryEnum.MULTIPLY_POINTS_BY_QUANTITY);
+ calculateRule7.setCalcFraction(0.1);
list.add(calculateRule7);
CalculateRule calculateRule6 = new CalculateRule();
calculateRule6.setRuleName("鍓嶇鎰熺煡婧愭不鐞嗗伐浣�");
calculateRule6.setRuleCondition("涓�鏈轰竴妗�");
+ calculateRule6.setDeductCategory(RuleDeductCategoryEnum.MULTIPLY_POINTS_BY_QUANTITY);
+ calculateRule6.setCalcFraction(0.1);
list.add(calculateRule6);
CalculateRule calculateRule5 = new CalculateRule();
- calculateRule5.setId(3L);
+ calculateRule5.setId(3);
calculateRule5.setRuleName("鍚庡彴绯荤粺鐨勪繚闅�");
calculateRule5.setRuleCondition("鍗曟鏁呴殰鏃堕暱鑻ヨ秴鍑�72灏忔椂涓嶈冻144灏忔椂鐨勶紝姣忚秴鍑�12灏忔椂锛堜笉瓒�12灏忔椂鎸�12灏忔椂璁★級");
calculateRule5.setMax(144D);
@@ -138,17 +144,18 @@
@Override
@Transactional
+ @SneakyThrows
public AjaxResult importData(MultipartFile file, TContract tContract) {
// 淇濆瓨鍚堝悓
tContract.setCreateTime(DateUtils.getNowDate());
save(tContract);
- List<CalculateRule> list = calculateRuleService.readExcel(file);
+
+ // 鑾峰彇鍚堝悓Excel瑙勫垯
+ List<CalculateRule> list = new ArrayList<>();
+ EasyExcel.read(file.getInputStream(), CalculateRule.class, new PageReadListener<CalculateRule>(list::addAll)).sheet().doRead();
// 閬嶅巻鐖跺瓙鍏崇郴
List<CalculateRule> calculateRulesToSave = new ArrayList<>();
- CalculateRule fu1 = new CalculateRule();
- CalculateRule fu2 = new CalculateRule();
- boolean fuNew = true;
for (CalculateRule calculateRule : list) {
// 鍒ゆ柇鏁版嵁瀹屾暣鎬�
if (ObjectUtils.isEmpty(calculateRule.getDeductCategory())) {
@@ -163,35 +170,13 @@
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return AjaxResult.warn("璇峰~鍐�" + calculateRule.getRuleName() + calculateRule.getRuleCondition() + "鎵e垎鏁板��");
}
- // 淇濆瓨鐖惰鍒欒幏鍙栫埗id
+ // 淇濆瓨瑙勫垯
if (StringUtils.isNotBlank(calculateRule.getRuleName())) {
- CalculateRule one = new CalculateRule();
- one.setParentId(0L);
- one.setContractId(tContract.getId().intValue());
- one.setRuleName(calculateRule.getRuleName());
- one.setCreateTime(DateUtils.getNowDate());
- one.setDeleted(0);
- calculateRuleService.save(one);
- fu1 = one;
- fuNew = true;
+ calculateRule.setContractId(tContract.getId().intValue());
+ calculateRule.setCreateTime(DateUtils.getNowDate());
+ calculateRule.setUpdateTime(DateUtils.getNowDate());
+ calculateRulesToSave.add(calculateRule);
}
- // 淇濆瓨绗簩灞傜埗瑙勫垯鑾峰彇绗簩灞傜埗id
- // if (StringUtils.isNotBlank(calculateRule.getRuleDesc())) {
- // CalculateRule two = new CalculateRule();
- // two.setContractId(tContract.getId().intValue());
- // two.setParentId(fu1.getId());
- // two.setRuleDesc(calculateRule.getRuleDesc());
- // two.setCreateTime(DateUtils.getNowDate());
- // two.setDeleted(0);
- // calculateRuleService.save(two);
- // fu2 = two;
- // fuNew = false;
- // }
- calculateRule.setContractId(tContract.getId().intValue());
- calculateRule.setCreateTime(DateUtils.getNowDate());
- calculateRule.setDeleted(0);
- calculateRule.setParentId(fuNew ? fu1.getId() : fu2.getId());
- calculateRulesToSave.add(calculateRule);
}
// 鎵归噺淇濆瓨瑙勫垯
calculateRuleService.saveBatch(calculateRulesToSave);
--
Gitblit v1.8.0