Commit 10757cfc by huluobin

闲时折扣

parent 707faa5f
......@@ -483,6 +483,7 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
}
}
@Transactional(rollbackFor = Exception.class)
@Override
public void cancelSchedule(CancelScheduleCommand cmd) {
......@@ -506,6 +507,7 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
technicianPushService.cancelScheduledMsg(scheduleManage.getId());
}
@Transactional(rollbackFor = Exception.class)
@Override
public void updateScheduledServeStatus(Integer scheduleServeId, Integer status, Integer forceLeisureConfig) {
/*1、校验*/
......@@ -602,6 +604,7 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
}
}
@Transactional(rollbackFor = Exception.class)
@Override
public void checkBeforeTakeOrders(Integer technicianId, Integer scheduleId) {
List<ScheduleServe> scheduleServeList = scheduleServeService.list(
......@@ -618,6 +621,7 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
});
}
@Transactional(rollbackFor = Exception.class)
@Override
public void submitSchedule(SubmitScheduleCommand cmd) {
......@@ -926,32 +930,6 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
return this.queryAvailableTechnician(leisureScheduleServeResp.getDepartmentId(), baseServe.getId(), startTime, endTime);
}
private void handleLeisureDiscountConfig(ScheduleManage scheduleManage) {
List<ScheduleServe> oldScheduleServeList;
if (scheduleManage.getId() != null) {
oldScheduleServeList = scheduleServeMapper.selectList(new LambdaQueryWrapper<ScheduleServe>().eq(ScheduleServe::getSchId, scheduleManage.getId()));
} else {
oldScheduleServeList = Lists.newArrayList();
}
oldScheduleServeList.forEach(this::backLeisureDiscountConfig);
scheduleManage.getListScheduleServer().forEach(scheduleServe -> {
if (scheduleServe.getLeisureDiscountConfigId() != null) {
String date = new SimpleDateFormat("yyyy-MM-dd").format(scheduleServe.getStartTime());
LeisureDiscountConfigLimit leisureDiscountConfigLimit = leisureDiscountConfigLimitMapper.selectConfigLimit(date, scheduleServe.getLeisureDiscountConfigId());
if (leisureDiscountConfigLimit != null) {
leisureDiscountConfigLimit.setLeftTimes(leisureDiscountConfigLimit.getLeftTimes() - 1);
if (leisureDiscountConfigLimit.getLeftTimes() < 0) {
throw new RRException("闲时预约次数不足,请重新预约");
}
}
leisureDiscountConfigLimitMapper.updateById(leisureDiscountConfigLimit);
}
});
}
/**
* 参数补全
......@@ -1226,7 +1204,6 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
Set<ScheduleServe> scheduleServes = scheduleManage.getListScheduleServer();
scheduleManage.setTotalPrice(scheduleServes.stream().map(ScheduleServe::getPrice).reduce(BigDecimal.ZERO, BigDecimal::add));
this.handleLeisureDiscountConfig(scheduleManage);
return scheduleManage;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment