|
@@ -301,14 +301,18 @@ public class MzyRequestController {
|
|
|
resultMap.put("message", "根据源号表数据模板创建新的号表数据失败,源号表不存在");
|
|
|
return resultMap;
|
|
|
}
|
|
|
+ //获取新号表的日期集合
|
|
|
List<Date> days = DateUtil.getBetweenDates(requestParamsVo.getNewBeginDate(), requestParamsVo.getNewEndDate());
|
|
|
+ //如果新号表日期集合不包含当前日期,加入当前日期
|
|
|
if (!days.contains(requestParamsVo.getNewBeginDate())) {
|
|
|
List<Date> tempDays = new ArrayList<>(days.size()+1);
|
|
|
tempDays.add(requestParamsVo.getNewBeginDate());
|
|
|
tempDays.addAll(days);
|
|
|
days=tempDays;
|
|
|
}
|
|
|
+ //原号表日期与号表映射
|
|
|
Map<Date, List<MzyRequest>> sourceMap = new HashMap<>();
|
|
|
+ //源号表日期集合
|
|
|
List<Date> sourceDate = new ArrayList<>();
|
|
|
for (MzyRequest m : mzyRequests) {
|
|
|
if (!sourceDate.contains(m.getRequestDay())) {
|
|
@@ -319,11 +323,14 @@ public class MzyRequestController {
|
|
|
temp.add(m);
|
|
|
}
|
|
|
for (int i = 0; i < days.size(); i++) {
|
|
|
+ //因为新号表按照源号表的顺序依次替换,所以取余
|
|
|
Date key = sourceDate.get(i % sourceDate.size());
|
|
|
List<MzyRequest> oneDateList = sourceMap.get(key);
|
|
|
for (MzyRequest o : oneDateList) {
|
|
|
MzyRequest mrc = CloneUtil.clone(o);
|
|
|
mrc.setRequestDay(days.get(i));
|
|
|
+ mrc.setLeftNum(60);
|
|
|
+ mrc.setTotalNum(60);
|
|
|
newMzyRequest.add(mrc);
|
|
|
}
|
|
|
}
|