|
|
@@ -2059,9 +2059,37 @@ public class PublicReleaseServiceImpl extends BaseMybatisDao<PublicReleaseMapper
|
|
|
e.setExceedType(1);
|
|
|
}
|
|
|
}
|
|
|
- if (e.getMaxDuration()!=null){
|
|
|
- if(e.getMaxDuration().equals("-1")){
|
|
|
+ //获取年份
|
|
|
+ if (StringUtils.isNotEmpty(e.getOrderNo())){
|
|
|
+ List<OrderYearMaxDuration> yearMaxDurationList = orderYearMaxDurationMapper.selectByOrderNo(e.getOrderNo());
|
|
|
+ int year = LocalDate.now().getYear();
|
|
|
+ OrderYearMaxDuration useOyd = null;
|
|
|
+ for (int i = 0; i < yearMaxDurationList.size(); i++) {
|
|
|
+ OrderYearMaxDuration oyd = yearMaxDurationList.get(i);
|
|
|
+ //年份为0不是会员直接获取跳出循环,否则获取当前年份,获取不到获取最后一年
|
|
|
+ if (oyd.getYear()==0){
|
|
|
+ useOyd=oyd;
|
|
|
+ break;
|
|
|
+ }else {
|
|
|
+ if (oyd.getYear().equals(year)){
|
|
|
+ useOyd = oyd;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ if(i==yearMaxDurationList.size()-1&&useOyd==null){
|
|
|
+ useOyd = yearMaxDurationList.get(i);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ if(useOyd.getStatus()==1){
|
|
|
e.setMaxDuration("不限制");
|
|
|
+ }else {
|
|
|
+ e.setMaxDuration(useOyd.getMaxDuration().toString());
|
|
|
+ if (useOyd.getMaxDuration().compareTo(new BigDecimal(e.getActualDuration()))>=0){
|
|
|
+ e.setExceedDuration("0");
|
|
|
+ }else {
|
|
|
+ e.setExceedDuration(new BigDecimal(e.getActualDuration()).subtract(useOyd.getMaxDuration()).toString());
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
});
|