修改bug#40955

This commit is contained in:
梁琦涛
2021-10-20 19:29:27 +08:00
parent 15521dbbfb
commit 7257e6d5c8
@@ -325,7 +325,7 @@ public class PaySpendingContractServiceImpl extends ServiceImpl<PaySpendingContr
return; return;
} }
if(count < listSpendingContract.size()){ if(count < listSpendingContract.size()){
sb.append("第").append(n + 1).append("行,excel数据错误!"); sb.append("第").append(n + 1).append("行:excel数据错误!");
}else { }else {
PaySpendingContractImportExcel paySpendingContractImportExcel = new PaySpendingContractImportExcel(); PaySpendingContractImportExcel paySpendingContractImportExcel = new PaySpendingContractImportExcel();
// 获取合同信息 // 获取合同信息
@@ -350,28 +350,28 @@ public class PaySpendingContractServiceImpl extends ServiceImpl<PaySpendingContr
paySpendingContractInstallment.setPhaseName(sub.get(mm)); paySpendingContractInstallment.setPhaseName(sub.get(mm));
if(!StringUtils.isBlank(sub.get(mm + 1))){ if(!StringUtils.isBlank(sub.get(mm + 1))){
if(!pattern.matcher(sub.get(mm + 1)).matches()){ if(!pattern.matcher(sub.get(mm + 1)).matches()){
sb.append("第").append(n + 1).append("行,").append(i+1).append("期应收金额格式错误!<br/>"); sb.append("第").append(n + 1).append("行:").append(i+1).append("期应收金额格式错误!<br/>");
}else{ }else{
paySpendingContractInstallment.setAccountsReceivableAmount(new BigDecimal(sub.get(mm + 1))); paySpendingContractInstallment.setAccountsReceivableAmount(new BigDecimal(sub.get(mm + 1)));
} }
} }
if(!StringUtils.isBlank(sub.get(mm + 2))){ if(!StringUtils.isBlank(sub.get(mm + 2))){
if(!DateUtils.isValidDate(sub.get(mm + 2))){ if(!DateUtils.isValidDate(sub.get(mm + 2))){
sb.append("第").append(n + 1).append("行,").append(i+1).append("期应收时间日期格式不正确 <br/>"); sb.append("第").append(n + 1).append("行:").append(i+1).append("期应收时间日期格式不正确 <br/>");
}else{ }else{
paySpendingContractInstallment.setAccountsReceivableTime(DateUtils.str2Date(sub.get(mm + 2),new SimpleDateFormat("yyyy-MM-dd"))); paySpendingContractInstallment.setAccountsReceivableTime(DateUtils.str2Date(sub.get(mm + 2),new SimpleDateFormat("yyyy-MM-dd")));
} }
} }
if(!StringUtils.isBlank(sub.get(mm + 3))){ if(!StringUtils.isBlank(sub.get(mm + 3))){
if(!pattern.matcher(sub.get(mm + 3)).matches()){ if(!pattern.matcher(sub.get(mm + 3)).matches()){
sb.append("第").append(n + 1).append("行,").append(i+1).append("期实收金额格式错误!<br/>"); sb.append("第").append(n + 1).append("行:").append(i+1).append("期实收金额格式错误!<br/>");
}else{ }else{
paySpendingContractInstallment.setPaidAmount(new BigDecimal(sub.get(mm + 3))); paySpendingContractInstallment.setPaidAmount(new BigDecimal(sub.get(mm + 3)));
} }
} }
if(!StringUtils.isBlank(sub.get(mm + 4))) { if(!StringUtils.isBlank(sub.get(mm + 4))) {
if (!DateUtils.isValidDate(sub.get(mm + 4))) { if (!DateUtils.isValidDate(sub.get(mm + 4))) {
sb.append("第").append(n + 1).append("行,").append(i+1).append("期实收时间日期格式不正确 <br/>"); sb.append("第").append(n + 1).append("行:").append(i+1).append("期实收时间日期格式不正确 <br/>");
} else { } else {
paySpendingContractInstallment.setPaidTime(DateUtils.str2Date(sub.get(mm + 4), new SimpleDateFormat("yyyy-MM-dd"))); paySpendingContractInstallment.setPaidTime(DateUtils.str2Date(sub.get(mm + 4), new SimpleDateFormat("yyyy-MM-dd")));
} }
@@ -410,7 +410,7 @@ public class PaySpendingContractServiceImpl extends ServiceImpl<PaySpendingContr
List<PaySpendingContract> listPaySpendingContractNew = listPaySpendingContract.stream().filter(item-> List<PaySpendingContract> listPaySpendingContractNew = listPaySpendingContract.stream().filter(item->
Objects.equals(item.getContractNum(),paySpendingContract.getContractNum())).collect(Collectors.toList()); Objects.equals(item.getContractNum(),paySpendingContract.getContractNum())).collect(Collectors.toList());
if(!CollectionUtils.isEmpty(listPaySpendingContractNew)){ if(!CollectionUtils.isEmpty(listPaySpendingContractNew)){
sb.append("第").append(n + 1).append("行,合同编号在excel中重复,请修改!<br/>"); sb.append("第").append(n + 1).append("行:合同编号在excel中重复,请修改!<br/>");
} }
listPaySpendingContract.add(paySpendingContract); listPaySpendingContract.add(paySpendingContract);
if(!Objects.isNull(paySpendingContract)){ if(!Objects.isNull(paySpendingContract)){
@@ -425,53 +425,53 @@ public class PaySpendingContractServiceImpl extends ServiceImpl<PaySpendingContr
List<PaySpendingContract> listDB = listDBContractNum.stream().filter(item-> List<PaySpendingContract> listDB = listDBContractNum.stream().filter(item->
Objects.equals(item.getContractNum(),paySpendingContract.getContractNum())).collect(Collectors.toList()); Objects.equals(item.getContractNum(),paySpendingContract.getContractNum())).collect(Collectors.toList());
if(!CollectionUtils.isEmpty(listDB)){ if(!CollectionUtils.isEmpty(listDB)){
sb.append("第").append(n + 1).append("行,合同编号已存在,请修改!<br/>"); sb.append("第").append(n + 1).append("行:合同编号已存在,请修改!<br/>");
} }
}else{ }else{
sb.append("第").append(n + 1).append("行,合同编号不能为空,请修改!<br/>"); sb.append("第").append(n + 1).append("行:合同编号不能为空,请修改!<br/>");
} }
// 验证数据库中是否存在负责人 // 验证数据库中是否存在负责人
if(!StringUtils.isBlank(paySpendingContract.getContractName())){ if(!StringUtils.isBlank(paySpendingContract.getContractName())){
List<SysUser> listDB = listDBPrincipalName.stream().filter(item-> List<SysUser> listDB = listDBPrincipalName.stream().filter(item->
Objects.equals(item.getRealname(),paySpendingContract.getPrincipalName())).collect(Collectors.toList()); Objects.equals(item.getRealname(),paySpendingContract.getPrincipalName())).collect(Collectors.toList());
if(CollectionUtils.isEmpty(listDB)){ if(CollectionUtils.isEmpty(listDB)){
sb.append("第").append(n + 1).append("行,负责人不存在,请修改!<br/>"); sb.append("第").append(n + 1).append("行:负责人不存在,请修改!<br/>");
}else{ }else{
paySpendingContract.setPrincipalId(listDB.get(0).getId()); paySpendingContract.setPrincipalId(listDB.get(0).getId());
// 验证数据库中是否存在部门名称 // 验证数据库中是否存在部门名称
Map<String, String> useDepNames = sysUserService.getDepNamesByUserIds(Collections.singletonList(listDB.get(0).getId())); Map<String, String> useDepNames = sysUserService.getDepNamesByUserIds(Collections.singletonList(listDB.get(0).getId()));
if(!Objects.isNull(useDepNames)){ if(!Objects.isNull(useDepNames)){
if(!Objects.equals(useDepNames.get(listDB.get(0).getId()),paySpendingContract.getDepartmentName())){ if(!Objects.equals(useDepNames.get(listDB.get(0).getId()),paySpendingContract.getDepartmentName())){
sb.append("第").append(n + 1).append("行,部门名称不存在,请修改!<br/>"); sb.append("第").append(n + 1).append("行:部门名称不存在,请修改!<br/>");
}else{ }else{
paySpendingContract.setDepartmentName(useDepNames.get(listDB.get(0).getId())); paySpendingContract.setDepartmentName(useDepNames.get(listDB.get(0).getId()));
} }
}else{ }else{
sb.append("第").append(n + 1).append("行,部门名称不存在,请修改!<br/>"); sb.append("第").append(n + 1).append("行:部门名称不存在,请修改!<br/>");
} }
} }
}else{ }else{
sb.append("第").append(n + 1).append("行,负责人不能为空,请修改!<br/>"); sb.append("第").append(n + 1).append("行:负责人不能为空,请修改!<br/>");
} }
if(!Objects.isNull(paySpendingContract.getPack()) && Objects.equals(paySpendingContract.getPack(),PayIncomeContractCommon.PACK1) && StringUtils.isBlank(paySpendingContract.getPackYear())){ if(!Objects.isNull(paySpendingContract.getPack()) && Objects.equals(paySpendingContract.getPack(),PayIncomeContractCommon.PACK1) && StringUtils.isBlank(paySpendingContract.getPackYear())){
sb.append("第").append(n + 1).append("行,打包年份不能为空,请修改!<br/>"); sb.append("第").append(n + 1).append("行:打包年份不能为空,请修改!<br/>");
} }
if(!Objects.isNull(paySpendingContract.getAccountsReceivableAmount()) && !Objects.isNull(paySpendingContract.getAmountReceived()) if(!Objects.isNull(paySpendingContract.getAccountsReceivableAmount()) && !Objects.isNull(paySpendingContract.getAmountReceived())
&& paySpendingContract.getAccountsReceivableAmount().compareTo(paySpendingContract.getAmountReceived()) < 0){ && paySpendingContract.getAccountsReceivableAmount().compareTo(paySpendingContract.getAmountReceived()) < 0){
sb.append("第").append(n + 1).append("行,已收金额大于应收金额,请修改!<br/>"); sb.append("第").append(n + 1).append("行:已收金额大于应收金额,请修改!<br/>");
} }
List<PaySpendingContractInstallment> listPaySpendingContractInstallment = p.getListInstallment(); List<PaySpendingContractInstallment> listPaySpendingContractInstallment = p.getListInstallment();
if(!CollectionUtils.isEmpty(listPaySpendingContractInstallment)){ if(!CollectionUtils.isEmpty(listPaySpendingContractInstallment)){
listPaySpendingContractInstallment.forEach(item->{ listPaySpendingContractInstallment.forEach(item->{
int c = listPaySpendingContractInstallment.indexOf(item) + 1;
if(!Objects.isNull(item.getAccountsReceivableAmount()) && !Objects.isNull(item.getPaidAmount())
&& item.getAccountsReceivableAmount().compareTo(item.getPaidAmount()) < 0){
sb.append("第").append(n + 1).append("行,").append(c).append("期实收金额大于应收金额,请修改!<br/>");
}
StringBuilder msg = ValidUtil.validateExcel(item,n + 1); StringBuilder msg = ValidUtil.validateExcel(item,n + 1);
if(!StringUtils.isBlank(msg)){ if(!StringUtils.isBlank(msg)){
sb.append(msg.toString()); sb.append(msg.toString());
} }
int c = listPaySpendingContractInstallment.indexOf(item) + 1;
if(!Objects.isNull(item.getAccountsReceivableAmount()) && !Objects.isNull(item.getPaidAmount())
&& item.getAccountsReceivableAmount().compareTo(item.getPaidAmount()) < 0){
sb.append("第").append(n + 1).append("行:").append(c).append("期实收金额大于应收金额,请修改!<br/>");
}
}); });
} }
}); });
@@ -541,52 +541,52 @@ public class PaySpendingContractServiceImpl extends ServiceImpl<PaySpendingContr
paySpendingContract.setDepartmentName(map.get(6)); paySpendingContract.setDepartmentName(map.get(6));
if(!StringUtils.isBlank(map.get(7))){ if(!StringUtils.isBlank(map.get(7))){
if(!pattern.matcher(map.get(7)).matches()){ if(!pattern.matcher(map.get(7)).matches()){
sb.append("第").append(n).append("行,签订合同总金额格式错误!<br/>"); sb.append("第").append(n).append("行:签订合同总金额格式错误!<br/>");
}else{ }else{
paySpendingContract.setContractAmount(new BigDecimal(map.get(7))); paySpendingContract.setContractAmount(new BigDecimal(map.get(7)));
} }
} }
if(!StringUtils.isBlank(map.get(8))){ if(!StringUtils.isBlank(map.get(8))){
if(!pattern.matcher(map.get(8)).matches()){ if(!pattern.matcher(map.get(8)).matches()){
sb.append("第").append(n).append("行,税率格式错误!<br/>"); sb.append("第").append(n).append("行:税率格式错误!<br/>");
}else{ }else{
paySpendingContract.setRate(new BigDecimal(map.get(8))); paySpendingContract.setRate(new BigDecimal(map.get(8)));
} }
} }
if(!StringUtils.isBlank(map.get(9)) ){ if(!StringUtils.isBlank(map.get(9)) ){
if(!pattern.matcher(map.get(9)).matches()){ if(!pattern.matcher(map.get(9)).matches()){
sb.append("第").append(n).append("行,未税金额格式错误!<br/>"); sb.append("第").append(n).append("行:未税金额格式错误!<br/>");
}else{ }else{
paySpendingContract.setNoTaxAmount(new BigDecimal(map.get(9))); paySpendingContract.setNoTaxAmount(new BigDecimal(map.get(9)));
} }
} }
if(!StringUtils.isBlank(map.get(10)) ){ if(!StringUtils.isBlank(map.get(10)) ){
if(!DateUtils.isValidDate(map.get(10))){ if(!DateUtils.isValidDate(map.get(10))){
sb.append("第").append(n).append("行,合同签订日期格式不正确 <br/>"); sb.append("第").append(n).append("行:合同签订日期格式不正确 <br/>");
}else{ }else{
paySpendingContract.setContractDate(DateUtils.str2Date(map.get(10),new SimpleDateFormat("yyyy-MM-dd"))); paySpendingContract.setContractDate(DateUtils.str2Date(map.get(10),new SimpleDateFormat("yyyy-MM-dd")));
} }
} }
if(!StringUtils.isBlank(map.get(11))){ if(!StringUtils.isBlank(map.get(11))){
if(!DateUtils.isValidDate(map.get(11))) { if(!DateUtils.isValidDate(map.get(11))) {
sb.append("第").append(n).append("行,合同终止日期格式不正确 <br/>"); sb.append("第").append(n).append("行:合同终止日期格式不正确 <br/>");
}else{ }else{
paySpendingContract.setTerminationDate(DateUtils.str2Date(map.get(11),new SimpleDateFormat("yyyy-MM-dd"))); paySpendingContract.setTerminationDate(DateUtils.str2Date(map.get(11),new SimpleDateFormat("yyyy-MM-dd")));
} }
} }
paySpendingContract.setContractTimePoints(map.get(12)); paySpendingContract.setContractTimePoints(map.get(13));
if(!StringUtils.isBlank(map.get(12))){
if(!pattern.matcher(map.get(12)).matches()){
sb.append("第").append(n).append("行,应收金额格式错误!<br/>");
}else{
paySpendingContract.setAccountsReceivableAmount(new BigDecimal(map.get(12)));
}
}
if(!StringUtils.isBlank(map.get(13))){ if(!StringUtils.isBlank(map.get(13))){
if(!pattern.matcher(map.get(13)).matches()){ if(!pattern.matcher(map.get(13)).matches()){
sb.append("第").append(n).append("行,已收金额格式错误!<br/>"); sb.append("第").append(n).append("行:应收金额格式错误!<br/>");
}else{ }else{
paySpendingContract.setAmountReceived(new BigDecimal(map.get(13))); paySpendingContract.setAccountsReceivableAmount(new BigDecimal(map.get(13)));
}
}
if(!StringUtils.isBlank(map.get(14))){
if(!pattern.matcher(map.get(14)).matches()){
sb.append("第").append(n).append("行:已收金额格式错误!<br/>");
}else{
paySpendingContract.setAmountReceived(new BigDecimal(map.get(14)));
} }
} }