修改bug#40674

This commit is contained in:
梁琦涛
2021-10-14 16:57:16 +08:00
parent 0eddd9727b
commit e5795a5a19
5 changed files with 57 additions and 36 deletions
@@ -647,8 +647,14 @@ public class PayCompanyManagementController extends JeroController<PayCompanyMan
//导入Excel格式校验,看匹配的字段文本概率
Boolean t = ExcelImportCheckUtil.check(file.getInputStream(), PayCompanyManagement.class, params);
if(!t){
throw new JeroBootException("导入Excel校验失败 ");
throw new JeroBootException("文件格式有误,请下载模板后上传 ");
}
}catch (Exception e){
e.printStackTrace();
throw new JeroBootException("文件格式有误,请下载模板后上传 ");
}
StringBuilder msg = new StringBuilder();
try {
List<PayCompanyManagement> list = ExcelImportUtil.importExcel(file.getInputStream(), PayCompanyManagement.class, params);
if(!CollectionUtils.isEmpty(list)){
List<PayCompanyManagement> listSigning = new ArrayList<>();
@@ -661,18 +667,17 @@ public class PayCompanyManagementController extends JeroController<PayCompanyMan
List<PayCompanyManagement> listDutyCodeAll = payCompanyManagementService.list(queryPayCompanyManagement);
List<String> listCompany = new ArrayList<>();
List<String> listDutyCode = new ArrayList<>();
StringBuilder msg = new StringBuilder();
int finalDataSource = dataSource;
int finalStatus = status;
list.forEach(p->{
int count = list.indexOf(p);
// 校验excel表中是否存在重复企业名称
if(listCompany.contains(p.getCompanyName())){
msg.append(" ").append(count + 3).append(" 行:企业名称在excel中重复,请修改。<br/>");
msg.append("").append(count + 3).append("行:企业名称在excel中重复,请修改。<br/>");
}
listCompany.add(p.getCompanyName());
if(listDutyCode.contains(p.getDutyCode())){
msg.append(" ").append(count + 3).append(" 行:信用代码在excel中重复,请修改。<br/>");
msg.append("").append(count + 3).append("行:信用代码在excel中重复,请修改。<br/>");
}
listCompany.add(p.getDutyCode());
p.setDataSource(finalDataSource);
@@ -709,6 +714,8 @@ public class PayCompanyManagementController extends JeroController<PayCompanyMan
}
// 更新数据
payCompanyManagementService.updateCompanyData(listSigning,list);
}else{
msg.append("没有数据可导入!");
}
} catch (Exception e) {
log.error(e.getMessage(),e);
@@ -720,6 +727,9 @@ public class PayCompanyManagementController extends JeroController<PayCompanyMan
e.printStackTrace();
}
}
if(!StringUtils.isEmpty(msg)){
return Result.error(msg.toString());
}
}
return Result.OK("文件导入成功!");
}
@@ -688,8 +688,14 @@ public class PayContactsManagementController extends JeroController<PayContactsM
//导入Excel格式校验,看匹配的字段文本概率
Boolean t = ExcelImportCheckUtil.check(file.getInputStream(), PayContactsManagement.class, params);
if(!t){
throw new RuntimeException("导入Excel校验失败 ");
throw new JeroBootException("文件格式有误,请下载模板后上传 ");
}
}catch (Exception e){
e.printStackTrace();
throw new JeroBootException("文件格式有误,请下载模板后上传 ");
}
StringBuilder msg = new StringBuilder();
try {
List<PayContactsManagement> list = ExcelImportUtil.importExcel(file.getInputStream(), PayContactsManagement.class, params);
if(!CollectionUtils.isEmpty(list)){
List<PayContactsManagement> listSigning = new ArrayList<>();
@@ -713,7 +719,6 @@ public class PayContactsManagementController extends JeroController<PayContactsM
listCompanyAll = payCompanyManagementService.listPayCompanyManagement(companyList);
}
List<PayContactsManagement> listContacts = new ArrayList<>();
StringBuilder msg = new StringBuilder();
List<PayCompanyManagement> finalListCompanyAll = listCompanyAll;
List<PayContactsManagement> finalListContactsAll = listContactsAll;
list.forEach(p->{
@@ -721,13 +726,13 @@ public class PayContactsManagementController extends JeroController<PayContactsM
// 校验excel表中是否存在重复手机号
List<PayContactsManagement> listContactsPhone = listContacts.stream().filter(p1->Objects.equals(p1.getPhone(),p.getPhone())).collect(Collectors.toList());
if(!CollectionUtils.isEmpty(listContactsPhone)){
msg.append(" ").append(count + 3).append(" 行:手机号在excel中重复,请修改。<br/>");
msg.append("").append(count + 3).append("行:手机号在excel中重复,请修改。<br/>");
}
// 校验excel表中是否存在重复联系人
List<PayContactsManagement> listContactsName = listContacts.stream().filter(p1->Objects.equals(p1.getName(),p.getName())
&& Objects.equals(p1.getCompanyId(),p.getCompanyId())).collect(Collectors.toList());
if(!CollectionUtils.isEmpty(listContactsName)){
msg.append(" ").append(count + 3).append(" 行:联系人姓名在excel中重复,请修改。<br/>");
msg.append("").append(count + 3).append("行:联系人姓名在excel中重复,请修改。<br/>");
}
listContacts.add(p);
// 校验字段值
@@ -736,7 +741,7 @@ public class PayContactsManagementController extends JeroController<PayContactsM
msg.append(s);
}
if(StringUtils.isEmpty(p.getCompanyName())){
msg.append(" ").append(count + 3).append(" 行:企业名称不能为空,请修改。<br/>");
msg.append("").append(count + 3).append("行:企业名称不能为空,请修改。<br/>");
}else{
// 根据企业名称获取企业id
if(!CollectionUtils.isEmpty(finalListCompanyAll)){
@@ -744,10 +749,10 @@ public class PayContactsManagementController extends JeroController<PayContactsM
if(!CollectionUtils.isEmpty(listCompany)){
p.setCompanyId(listCompany.get(0).getId());
}else{
msg.append(" ").append(count + 3).append(" 行:企业名称不存在,请修改。<br/>");
msg.append("").append(count + 3).append("行:企业名称不存在,请修改。<br/>");
}
}else{
msg.append(" ").append(count + 3).append(" 行:企业名称不存在,请修改。<br/>");
msg.append("").append(count + 3).append("行:企业名称不存在,请修改。<br/>");
}
}
// 校验 手机号,姓名
@@ -779,6 +784,8 @@ public class PayContactsManagementController extends JeroController<PayContactsM
}
// 更新数据
payContactsManagementService.updateContactsData(listSigning,list);
}else{
msg.append("没有数据可导入!");
}
} catch (Exception e) {
log.error(e.getMessage(),e);
@@ -790,6 +797,9 @@ public class PayContactsManagementController extends JeroController<PayContactsM
e.printStackTrace();
}
}
if(!StringUtils.isEmpty(msg)){
return Result.error(msg.toString());
}
}
return Result.OK("文件导入成功!");
}
@@ -260,11 +260,11 @@ public class PaySpendingContractServiceImpl extends ServiceImpl<PaySpendingContr
int count = map.size();
// 合同信息字段为20个,分期信息为5个
if(count < listSpendingContract.size()){
throw new JeroBootException("excel表头错误");
throw new JeroBootException("文件格式有误,请下载模板后上传");
}else {
listSpendingContract.forEach(p->{
if(!Objects.equals(map.get(listSpendingContract.indexOf(p)),p)){
throw new JeroBootException("excel表头错误");
throw new JeroBootException("文件格式有误,请下载模板后上传");
}
});
int count1 = count - listSpendingContract.size();
@@ -272,7 +272,7 @@ public class PaySpendingContractServiceImpl extends ServiceImpl<PaySpendingContr
Pattern p = Pattern.compile("[0-9]*");
Matcher m = p.matcher(String.valueOf(count1 / 5));
if (!m.matches()){
throw new JeroBootException("excel表头错误");
throw new JeroBootException("文件格式有误,请下载模板后上传");
}
int count2 = count1 / listSpendingContractInstallment.size();
for (int i = 1; i <= count2; i++) {
@@ -139,7 +139,6 @@ public class PayWorkingGroupSubItem implements Serializable {
private java.lang.String chargeNoticeNo;
/**收费通知文件id*/
@ApiModelProperty(value = "收费通知文件id")
@Size(max = 32,message = "收费通知文件id长度不能大于32个字符")
private java.lang.String chargeNoticeId;
/**打包(1:是,0:否)*/
@ApiModelProperty(value = "打包(1:是,0:否)")
@@ -298,11 +298,11 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
try {
Boolean t = ExcelImportCheckUtil.check(file.getInputStream(), PayWorkingGroupSubItem.class, params);
if(!t){
throw new JeroBootException("导入Excel校验失败 ");
throw new JeroBootException("文件格式有误,请下载模板后上传 ");
}
} catch (IOException e) {
} catch (Exception e) {
e.printStackTrace();
throw new JeroBootException("导入Excel校验失败 ");
throw new JeroBootException("文件格式有误,请下载模板后上传 ");
}
try {
List<PayWorkingGroupSubItem> list = ExcelImportUtil.importExcel(file.getInputStream(), PayWorkingGroupSubItem.class, params);
@@ -362,13 +362,13 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
// 校验企业名称
List<PayCompanyManagement> listCompany = new ArrayList<>();
if (StringUtils.isBlank(p.getChargeCompanyTemporaryName())) {
msg.append(" ").append(count + 3).append(" 行:企业名称不能为空,请修改。<br/>");
msg.append("").append(count + 3).append("行:企业名称不能为空,请修改。<br/>");
} else {
// 通过企业名称获取企业id
listCompany = listCompanyInfo.stream().filter(item ->
Objects.equals(item.getCompanyName(), p.getChargeCompanyTemporaryName())).collect(Collectors.toList());
if (CollectionUtils.isEmpty(listCompany)) {
msg.append(" ").append(count + 3).append(" 行:企业名称不存在,请修改。<br/>");
msg.append("").append(count + 3).append("行:企业名称不存在,请修改。<br/>");
} else {
p.setChargeCompanyId(listCompany.get(0).getId());
}
@@ -377,25 +377,25 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
if (!StringUtils.isBlank(p.getChargeCompanyId())) {
List<PayWorkingGroupSubItem> listDateNew = listData.stream().filter(item -> Objects.equals(p.getChargeCompanyId(), item.getChargeCompanyId())).collect(Collectors.toList());
if (!CollectionUtils.isEmpty(listDateNew)) {
msg.append(" ").append(count + 3).append(" 行:工作组成员单位已存在,请修改。<br/>");
msg.append("").append(count + 3).append("行:工作组成员单位已存在,请修改。<br/>");
}
}
if(!StringUtils.isBlank(p.getContactsTemporaryNameOne()) && !StringUtils.isBlank(p.getContactsTemporaryNameTwo())
&& Objects.equals(p.getContactsTemporaryNameOne(),p.getContactsTemporaryNameTwo())){
msg.append(" ").append(count + 3).append(" 行:企业联系人一与企业联系人二重复,请修改。<br/>");
msg.append("").append(count + 3).append("行:企业联系人一与企业联系人二重复,请修改。<br/>");
}
if(!StringUtils.isBlank(p.getContactsTemporaryNameOne()) && !StringUtils.isBlank(p.getContactsTemporaryNameThree())
&& Objects.equals(p.getContactsTemporaryNameOne(),p.getContactsTemporaryNameThree())){
msg.append(" ").append(count + 3).append(" 行:企业联系人一与企业联系人三重复,请修改。<br/>");
msg.append("").append(count + 3).append("行:企业联系人一与企业联系人三重复,请修改。<br/>");
}
if(!StringUtils.isBlank(p.getContactsTemporaryNameTwo()) && !StringUtils.isBlank(p.getContactsTemporaryNameThree())
&& Objects.equals(p.getContactsTemporaryNameTwo(),p.getContactsTemporaryNameThree())){
msg.append(" ").append(count + 3).append(" 行:企业联系人二与企业联系人三重复,请修改。<br/>");
msg.append("").append(count + 3).append("行:企业联系人二与企业联系人三重复,请修改。<br/>");
}
// 校验联系人一
if (StringUtils.isBlank(p.getContactsTemporaryNameOne())) {
msg.append(" ").append(count + 3).append(" 行:企业联系人一不能为空,请修改。<br/>");
msg.append("").append(count + 3).append("行:企业联系人一不能为空,请修改。<br/>");
} else {
if (!CollectionUtils.isEmpty(listCompany)) {
// 通过联系人获取联系人id
@@ -404,7 +404,7 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
Objects.equals(item.getName(), p.getContactsTemporaryNameOne())
&& Objects.equals(item.getCompanyId(), finalListCompany.get(0).getId())).collect(Collectors.toList());
if (CollectionUtils.isEmpty(listContacts)) {
msg.append(" ").append(count + 3).append(" 行:该企业下不存在企业联系人一,请修改。<br/>");
msg.append("").append(count + 3).append("行:该企业下不存在企业联系人一,请修改。<br/>");
} else {
p.setContactsIdOne(listContacts.get(0).getId());
}
@@ -420,7 +420,7 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
Objects.equals(item.getName(), p.getContactsTemporaryNameTwo())
&& Objects.equals(item.getCompanyId(), finalListCompany.get(0).getId())).collect(Collectors.toList());
if (CollectionUtils.isEmpty(listContacts)) {
msg.append(" ").append(count + 3).append(" 行:该企业下不存在企业联系人二,请修改。<br/>");
msg.append("").append(count + 3).append("行:该企业下不存在企业联系人二,请修改。<br/>");
} else {
p.setContactsIdTwo(listContacts.get(0).getId());
}
@@ -435,7 +435,7 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
Objects.equals(item.getName(), p.getContactsTemporaryNameThree())
&& Objects.equals(item.getCompanyId(), finalListCompany.get(0).getId())).collect(Collectors.toList());
if (CollectionUtils.isEmpty(listContacts)) {
msg.append(" ").append(count + 3).append(" 行:该企业下不存在企业联系人三,请修改。<br/>");
msg.append("").append(count + 3).append("行:该企业下不存在企业联系人三,请修改。<br/>");
} else {
p.setContactsIdThree(listContacts.get(0).getId());
}
@@ -443,7 +443,7 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
}
// 校验邮寄联系人
if (StringUtils.isBlank(p.getMailContactsTemporaryName())) {
msg.append(" ").append(count + 3).append(" 行:邮寄联系人不能为空,请修改。<br/>");
msg.append("").append(count + 3).append("行:邮寄联系人不能为空,请修改。<br/>");
} else {
if (!CollectionUtils.isEmpty(listCompany)) {
// 通过联系人获取联系人id
@@ -452,7 +452,7 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
Objects.equals(item.getName(), p.getMailContactsTemporaryName())
&& Objects.equals(item.getCompanyId(), finalListCompany.get(0).getId())).collect(Collectors.toList());
if (CollectionUtils.isEmpty(listContacts)) {
msg.append(" ").append(count + 3).append(" 行:该企业下不存在邮寄联系人,请修改。<br/>");
msg.append("").append(count + 3).append("行:该企业下不存在邮寄联系人,请修改。<br/>");
} else {
p.setMailContactsId(listContacts.get(0).getId());
}
@@ -461,32 +461,32 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
// 校验成员唯一性
List<PayWorkingGroupSubItem> listCompanyAndContactsNew = listCompanyAndContacts.stream().filter(item -> Objects.equals(p.getChargeCompanyTemporaryName(), item.getChargeCompanyTemporaryName())).collect(Collectors.toList());
if (!CollectionUtils.isEmpty(listCompanyAndContactsNew)) {
msg.append(" ").append(count + 3).append(" 行:工作组成员单位重复出现,请修改。<br/>");
msg.append("").append(count + 3).append("行:工作组成员单位重复出现,请修改。<br/>");
}
listCompanyAndContacts.add(p);
// 校验
if (Objects.equals(p.getChargeWay(), PayProjectCommon.CHARGE_WAY2)) {
if (Objects.isNull(p.getReceivableAmount())) {
msg.append(" ").append(count + 3).append(" 行:应收金额不能为空,请修改。<br/>");
msg.append("").append(count + 3).append("行:应收金额不能为空,请修改。<br/>");
}
if (StringUtils.isBlank(p.getContractNum())) {
msg.append(" ").append(count + 3).append(" 行:合同号不能为空,请修改。<br/>");
msg.append("").append(count + 3).append("行:合同号不能为空,请修改。<br/>");
}
}
if (Objects.equals(p.getChargeWay(), PayProjectCommon.CHARGE_WAY3)) {
if (Objects.isNull(p.getChargeNoticeNo())) {
msg.append(" ").append(count + 3).append(" 行:收费通知号不能为空,请修改。<br/>");
msg.append("").append(count + 3).append("行:收费通知号不能为空,请修改。<br/>");
} else {
if (Objects.equals(payWorkingGroup.getChargeNoticeNoA(), p.getChargeNoticeNo())) {
p.setChargeNoticeId(payWorkingGroup.getChargeNoticeAId());
} else if (Objects.equals(payWorkingGroup.getChargeNoticeNoB(), p.getChargeNoticeNo())) {
p.setChargeNoticeId(payWorkingGroup.getChargeNoticeBId());
} else {
msg.append(" ").append(count + 3).append(" 行:收费通知号不存在,请修改。<br/>");
msg.append("").append(count + 3).append("行:收费通知号不存在,请修改。<br/>");
}
}
if (Objects.isNull(p.getReceivableAmount())) {
msg.append(" ").append(count + 3).append(" 行:应收金额不能为空,请修改。<br/>");
msg.append("").append(count + 3).append("行:应收金额不能为空,请修改。<br/>");
}
}
p.setPack(PayProjectCommon.PACKAGING0);
@@ -506,6 +506,8 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
payWorkingGroupSubItemService.saveBatch(list);
}
}
}else{
throw new JeroBootException("没有数据可导入!");
}
} catch (Exception e) {
log.error(e.getMessage(),e);