|
@@ -34,6 +34,7 @@ import java.util.ArrayList;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
@Service
|
|
|
public class FinancialExpenditureServiceImpl extends BaseServiceImpl<Long, FinancialExpenditure> implements FinancialExpenditureService {
|
|
@@ -60,7 +61,17 @@ public class FinancialExpenditureServiceImpl extends BaseServiceImpl<Long, Finan
|
|
|
Map<String, Integer> phoneMap = getMap("sys_user", "phone_", "id_", true, String.class, Integer.class);
|
|
|
for (String e : sheetsListMap.keySet()) {
|
|
|
List<Map<String, Object>> sheet = sheetsListMap.get(e);
|
|
|
+ List<Object> collect = sheet.stream().map(m -> m.get("钉钉流程编号")).collect(Collectors.toList());
|
|
|
+ if(collect == null || collect.size() == 0){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ List<String> list = financialExpenditureDao.countBydingTalk(collect);
|
|
|
+ if(list != null && list.size() > 0){
|
|
|
+ throw new BizException("导入数据错误 重复的钉钉流程编号:{}",list.get(0));
|
|
|
+ }
|
|
|
+
|
|
|
valueIsNull: for (Map<String, Object> row : sheet) {
|
|
|
+
|
|
|
if (row.size() == 0){
|
|
|
continue;
|
|
|
}
|
|
@@ -93,6 +104,12 @@ public class FinancialExpenditureServiceImpl extends BaseServiceImpl<Long, Finan
|
|
|
}
|
|
|
continue;
|
|
|
}
|
|
|
+ if (columnValue.equals("dingtalkProcessNo")) {
|
|
|
+ if(StringUtils.isEmpty(row.get(s).toString())){
|
|
|
+ LOGGER.error("支出记录导入异常:钉钉流程编号不可为空 param:{}",objectMap);
|
|
|
+ continue valueIsNull;
|
|
|
+ }
|
|
|
+ }
|
|
|
if (columnValue.equals("feeProject")) {
|
|
|
for (FeeProjectEnum feeProject : FeeProjectEnum.values()) {
|
|
|
if (feeProject.getDesc().equals(row.get(s).toString())) {
|