fix:87325
This commit is contained in:
+76
-41
@@ -3,7 +3,6 @@ package com.jero.modules.laws.marketStandard.service.impl;
|
|||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.jero.common.api.vo.Result;
|
import com.jero.common.api.vo.Result;
|
||||||
@@ -20,6 +19,7 @@ import com.jero.modules.laws.marketStandard.entity.LawsMarketStandardDetailExcel
|
|||||||
import com.jero.modules.laws.marketStandard.mapper.LawsMarketStandardDetailMapper;
|
import com.jero.modules.laws.marketStandard.mapper.LawsMarketStandardDetailMapper;
|
||||||
import com.jero.modules.laws.marketStandard.service.ILawsMarketStandardDetailService;
|
import com.jero.modules.laws.marketStandard.service.ILawsMarketStandardDetailService;
|
||||||
import com.jero.modules.laws.marketStandard.service.ILawsMarketStandardService;
|
import com.jero.modules.laws.marketStandard.service.ILawsMarketStandardService;
|
||||||
|
import com.jero.modules.laws.utils.DateValidateUtil;
|
||||||
import com.jero.modules.laws.utils.ValidUtil;
|
import com.jero.modules.laws.utils.ValidUtil;
|
||||||
import com.jero.modules.quartz.entity.QuartzJob;
|
import com.jero.modules.quartz.entity.QuartzJob;
|
||||||
import org.apache.commons.collections4.CollectionUtils;
|
import org.apache.commons.collections4.CollectionUtils;
|
||||||
@@ -236,13 +236,19 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
|
|||||||
if(!StringUtils.isEmpty(g.toString())){
|
if(!StringUtils.isEmpty(g.toString())){
|
||||||
s.append(g.toString());
|
s.append(g.toString());
|
||||||
}
|
}
|
||||||
// 验证字典值是否满足条件
|
|
||||||
StringBuilder dict = lawsCommonService.validateFieldByDict(p);
|
|
||||||
if(!StringUtils.isBlank(dict)){
|
|
||||||
s.append(dict);
|
|
||||||
}
|
|
||||||
// 验证标准编号
|
// 验证标准编号
|
||||||
checkStandard(listIdsStandard, listStandardIds, listStandardIdRepeat, p, s);
|
if(!StringUtils.isBlank(p.getStandardNumber())){
|
||||||
|
Optional<LawsMarketStandardDetail> op = listIdsStandard.stream().filter(o->
|
||||||
|
Objects.equals(o.getStandardNumber(),p.getStandardNumber())).findFirst();
|
||||||
|
if(!op.isPresent()){
|
||||||
|
s.append("标准编号不存在,");
|
||||||
|
continue;
|
||||||
|
}else{
|
||||||
|
checkStandar(listStandardIds, listStandardIdRepeat, p, s, op);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
checkDate(p, s);
|
||||||
|
|
||||||
if(!StringUtils.isBlank(s.toString())){
|
if(!StringUtils.isBlank(s.toString())){
|
||||||
m.append("第").append(i + 4).append("行,").append(s.toString(), 0, s.toString().length() - 1)
|
m.append("第").append(i + 4).append("行,").append(s.toString(), 0, s.toString().length() - 1)
|
||||||
.append("<br>");
|
.append("<br>");
|
||||||
@@ -251,6 +257,69 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
|
|||||||
return m;
|
return m;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void checkStandar(List<String> listStandardIds, List<String> listStandardIdRepeat, LawsMarketStandardDetail p, StringBuilder s, Optional<LawsMarketStandardDetail> op) {
|
||||||
|
if(!op.isPresent()){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
LawsMarketStandardDetail obj = op.get();
|
||||||
|
String id = obj.getStandardId();
|
||||||
|
p.setStandardId(id);
|
||||||
|
if(!CollectionUtils.isEmpty(listStandardIds) && listStandardIds.contains(id)){
|
||||||
|
s.append("标准编号已存在,");
|
||||||
|
}else if(!CollectionUtils.isEmpty(listStandardIdRepeat) && listStandardIdRepeat.contains(id)){
|
||||||
|
s.append("标准编号重复,");
|
||||||
|
}else{
|
||||||
|
// 验证标准名称
|
||||||
|
if(!Objects.equals(obj.getStandardName(),p.getStandardName())){
|
||||||
|
s.append("标准名称错误,");
|
||||||
|
}
|
||||||
|
// 验证标准英文名称
|
||||||
|
if(!StringUtils.isEmpty(obj.getStandardEnglishName())
|
||||||
|
&& !Objects.equals(obj.getStandardEnglishName(), p.getStandardEnglishName())){
|
||||||
|
s.append("标准英文名称错误,");
|
||||||
|
}
|
||||||
|
// 验证类型
|
||||||
|
if(!Objects.equals(obj.getType(),p.getType())){
|
||||||
|
s.append("类型错误,");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
listStandardIdRepeat.add(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void checkDate(LawsMarketStandardDetail p, StringBuilder s) {
|
||||||
|
// 验证字典值是否满足条件
|
||||||
|
StringBuilder dict = lawsCommonService.validateFieldByDict(p);
|
||||||
|
if(!StringUtils.isBlank(dict)){
|
||||||
|
s.append(dict);
|
||||||
|
}
|
||||||
|
String format = "yyyy-MM-dd";
|
||||||
|
// 新生产车实施日期
|
||||||
|
if(!StringUtils.isEmpty(p.getNewProductImplDate())){
|
||||||
|
String[] str = p.getNewProductImplDate().split(",");
|
||||||
|
for (String s1 : str) {
|
||||||
|
if (!DateValidateUtil.isValidDate(s1, format)) {
|
||||||
|
s.append("新生产车实施日期格式错误(请输入年-月-日格式),");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 新认证车实施日期
|
||||||
|
if(!StringUtils.isEmpty(p.getNewAuthImplDate())){
|
||||||
|
String[] str = p.getNewAuthImplDate().split(",");
|
||||||
|
for (String s1 : str) {
|
||||||
|
if (!DateValidateUtil.isValidDate(s1, format)) {
|
||||||
|
s.append("新认证车实施日期格式错误(请输入年-月-日格式),");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 注册日期
|
||||||
|
if(!StringUtils.isEmpty(p.getRegistrationDate()) &&
|
||||||
|
!DateValidateUtil.isValidDate(p.getRegistrationDate(), format)){
|
||||||
|
s.append("注册日期格式错误(请输入年-月-日格式),");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
private List<LawsMarketStandardDetailExcel> getLawsMarketStandardDetailExcels(MultipartFile file, ImportParams params) throws Exception {
|
private List<LawsMarketStandardDetailExcel> getLawsMarketStandardDetailExcels(MultipartFile file, ImportParams params) throws Exception {
|
||||||
List<LawsMarketStandardDetailExcel> listLawsMarketStandardDetailExcel = ExcelImportUtil.importExcel(
|
List<LawsMarketStandardDetailExcel> listLawsMarketStandardDetailExcel = ExcelImportUtil.importExcel(
|
||||||
@@ -263,40 +332,6 @@ public class LawsMarketStandardDetailServiceImpl extends ServiceImpl<LawsMarketS
|
|||||||
return listLawsMarketStandardDetailExcel;
|
return listLawsMarketStandardDetailExcel;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void checkStandard(List<LawsMarketStandardDetail> listIdsStandard, List<String> listStandardIds, List<String> listStandardIdRepeat, LawsMarketStandardDetail p, StringBuilder s) {
|
|
||||||
if(!StringUtils.isBlank(p.getStandardNumber())){
|
|
||||||
Optional<LawsMarketStandardDetail> op = listIdsStandard.stream().filter(o->
|
|
||||||
Objects.equals(o.getStandardNumber(),p.getStandardNumber())).findFirst();
|
|
||||||
if(!op.isPresent()){
|
|
||||||
s.append("标准编号不存在,");
|
|
||||||
}else{
|
|
||||||
LawsMarketStandardDetail obj = op.get();
|
|
||||||
String id = obj.getStandardId();
|
|
||||||
p.setStandardId(id);
|
|
||||||
if(!CollectionUtils.isEmpty(listStandardIds) && listStandardIds.contains(id)){
|
|
||||||
s.append("标准编号已存在,");
|
|
||||||
}else if(!CollectionUtils.isEmpty(listStandardIdRepeat) && listStandardIdRepeat.contains(id)){
|
|
||||||
s.append("标准编号重复,");
|
|
||||||
}else{
|
|
||||||
// 验证标准名称
|
|
||||||
if(!Objects.equals(obj.getStandardName(),p.getStandardName())){
|
|
||||||
s.append("标准名称错误,");
|
|
||||||
}
|
|
||||||
// 验证标准英文名称
|
|
||||||
if(!StringUtils.isEmpty(obj.getStandardEnglishName())
|
|
||||||
&& !Objects.equals(obj.getStandardEnglishName(), p.getStandardEnglishName())){
|
|
||||||
s.append("标准英文名称错误,");
|
|
||||||
}
|
|
||||||
// 验证类型
|
|
||||||
if(!Objects.equals(obj.getType(),p.getType())){
|
|
||||||
s.append("类型错误,");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
listStandardIdRepeat.add(id);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
private List<String> getStandardIds(String manifestId) {
|
private List<String> getStandardIds(String manifestId) {
|
||||||
LambdaQueryWrapper<LawsMarketStandardDetail> queryLawsMarketStandardDetail = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<LawsMarketStandardDetail> queryLawsMarketStandardDetail = new LambdaQueryWrapper<>();
|
||||||
|
|||||||
@@ -0,0 +1,29 @@
|
|||||||
|
package com.jero.modules.laws.utils;
|
||||||
|
|
||||||
|
import java.time.LocalDate;
|
||||||
|
import java.time.format.DateTimeFormatter;
|
||||||
|
import java.time.format.DateTimeParseException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author lqt
|
||||||
|
* @version 1.0
|
||||||
|
* @date 2024/7/24 9:29
|
||||||
|
*/
|
||||||
|
public class DateValidateUtil {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 验证日期是否匹配
|
||||||
|
* @param dateStr 输入日期
|
||||||
|
* @param formatPattern 期望的日期格式 yyyy-MM-dd
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public static boolean isValidDate(String dateStr, String formatPattern) {
|
||||||
|
DateTimeFormatter formatter = DateTimeFormatter.ofPattern(formatPattern);
|
||||||
|
try {
|
||||||
|
LocalDate.parse(dateStr, formatter);
|
||||||
|
return true;
|
||||||
|
} catch (DateTimeParseException e) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Binary file not shown.
Reference in New Issue
Block a user