Commit e0468c1e by huluobin

bug fix

parent bcc4b899
...@@ -96,7 +96,7 @@ public interface ScheduleManageService extends IService<ScheduleManage> { ...@@ -96,7 +96,7 @@ public interface ScheduleManageService extends IService<ScheduleManage> {
* @param cmd * @param cmd
* @return * @return
*/ */
void updateSchedule(UpdateScheduleCommand cmd); void updateSchedule(SubmitScheduleCommand cmd);
/** /**
* 更新预约前检查 * 更新预约前检查
......
...@@ -679,6 +679,7 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -679,6 +679,7 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
} }
BaseServe baseServe = baseServeMapper.selectById(scheduleServeVar.getServeId());
OrderServe orderServe = OrderServe.builder() OrderServe orderServe = OrderServe.builder()
//服务参数 //服务参数
.technicianId(String.valueOf(scheduleServeVar.getTechnicianIds())) .technicianId(String.valueOf(scheduleServeVar.getTechnicianIds()))
...@@ -692,6 +693,7 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -692,6 +693,7 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
.serveNumber(1) .serveNumber(1)
.servePrice(scheduleServeVar.getServePrice()) .servePrice(scheduleServeVar.getServePrice())
.serveType(scheduleServeVar.getServeType()) .serveType(scheduleServeVar.getServeType())
.serveTypeId(baseServe.getTypeId())
//款式参数 //款式参数
.produceBargainPrice(scheduleServeVar.getProduceBargainPrice()) .produceBargainPrice(scheduleServeVar.getProduceBargainPrice())
//款式id //款式id
...@@ -947,10 +949,16 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -947,10 +949,16 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
public void submitSchedule(SubmitScheduleCommand cmd) { public void submitSchedule(SubmitScheduleCommand cmd) {
this.validSubmit(cmd); this.validSubmit(cmd);
//预约服务补充
this.setScheduleServe(cmd.getScheduleManageDTO(), cmd.getDefaultNodeList()); this.setScheduleServe(cmd);
ScheduleManageCommand scheduleManageCommand = cmd.getScheduleManageDTO(); ScheduleManageCommand scheduleManageCommand = cmd.getScheduleManageDTO();
ScheduleManage scheduleManage = new ScheduleManage();
scheduleManage.setArriveTime(scheduleManageCommand.getArriveTime());
scheduleManage.setDepartmentId(scheduleManageCommand.getDepartmentId());
//预约服务补充
StoreManage storeManage = storeManageMapper.selectById(scheduleManageCommand.getDepartmentId()); StoreManage storeManage = storeManageMapper.selectById(scheduleManageCommand.getDepartmentId());
...@@ -984,7 +992,6 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -984,7 +992,6 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
scheduleServeCommand.setTechnicianNames(scheduleServeCommand.getTechnicianName()); scheduleServeCommand.setTechnicianNames(scheduleServeCommand.getTechnicianName());
}); });
ScheduleManage scheduleManage = new ScheduleManage();
BeanUtils.copyProperties(scheduleManageCommand, scheduleManage); BeanUtils.copyProperties(scheduleManageCommand, scheduleManage);
...@@ -1002,23 +1009,12 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -1002,23 +1009,12 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
scheduleServeList.forEach(scheduleServe -> scheduleServe.setCreateTime(new Date())); scheduleServeList.forEach(scheduleServe -> scheduleServe.setCreateTime(new Date()));
Date date = scheduleManage.getArriveTime();
Calendar c = Calendar.getInstance();
c.setTime(date);
int weekday = c.get(Calendar.DAY_OF_WEEK);
if (weekday == 1) {
weekday = 7;
} else {
weekday = weekday - 1;
}
scheduleManageMapper.insert(scheduleManage); scheduleManageMapper.insert(scheduleManage);
scheduleServeList.forEach(scheduleServe -> scheduleServe.setSchId(scheduleManage.getId())); scheduleServeList.forEach(scheduleServe -> scheduleServe.setSchId(scheduleManage.getId()));
int finalWeekday = weekday;
scheduleServeList.forEach(scheduleServe -> { scheduleServeList.forEach(scheduleServe -> {
LeisureDiscountConfig leisureDiscountConfig = leisureDiscountConfigMapper.selectLeisureDiscount(scheduleServe.getServeId(), new SimpleDateFormat("HH:mm").format(date), finalWeekday); int finalWeekday = DateUtils.getWeek(scheduleManage.getArriveTime());
LeisureDiscountConfig leisureDiscountConfig = leisureDiscountConfigMapper.selectLeisureDiscount(scheduleServe.getServeId(), new SimpleDateFormat("HH:mm").format(scheduleManage.getArriveTime()), finalWeekday);
if (leisureDiscountConfig != null) { if (leisureDiscountConfig != null) {
scheduleServe.setDiscountRate(leisureDiscountConfig.getDiscountRate()); scheduleServe.setDiscountRate(leisureDiscountConfig.getDiscountRate());
scheduleServe.setLeisureDiscountConfigId(leisureDiscountConfig.getId()); scheduleServe.setLeisureDiscountConfigId(leisureDiscountConfig.getId());
...@@ -1030,7 +1026,7 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -1030,7 +1026,7 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
} }
@Override @Override
public void updateSchedule(UpdateScheduleCommand cmd) { public void updateSchedule(SubmitScheduleCommand cmd) {
log.info("更新预约:{}", cmd); log.info("更新预约:{}", cmd);
...@@ -1038,7 +1034,7 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -1038,7 +1034,7 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
throw new RRException("入参错误"); throw new RRException("入参错误");
} }
this.setScheduleServe(cmd.getScheduleManageDTO(), cmd.getDefaultNodeList()); this.setScheduleServe(cmd);
ScheduleManageCommand scheduleManageCommand = cmd.getScheduleManageDTO(); ScheduleManageCommand scheduleManageCommand = cmd.getScheduleManageDTO();
...@@ -1048,8 +1044,6 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -1048,8 +1044,6 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
scheduleManageCommand.setDepartmentId(oldScheduleManage.getDepartmentId()); scheduleManageCommand.setDepartmentId(oldScheduleManage.getDepartmentId());
this.setSeverProduce(scheduleManageCommand);
ScheduleManage scheduleManage = scheduleManageMapper.selectById(scheduleManageCommand.getId()); ScheduleManage scheduleManage = scheduleManageMapper.selectById(scheduleManageCommand.getId());
SpringBeanUtils.copyPropertiesIgnoreNull(scheduleManageCommand, scheduleManage); SpringBeanUtils.copyPropertiesIgnoreNull(scheduleManageCommand, scheduleManage);
scheduleManage.setScheduledUser(oldScheduleManage.getScheduledUser()); scheduleManage.setScheduledUser(oldScheduleManage.getScheduledUser());
...@@ -1258,6 +1252,7 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -1258,6 +1252,7 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
orderServePrice = scheduleServeVar.getServePrice(); orderServePrice = scheduleServeVar.getServePrice();
} }
BaseServe baseServe = baseServeMapper.selectById(scheduleServeVar.getServeId());
OrderServe orderServe = OrderServe.builder() OrderServe orderServe = OrderServe.builder()
//服务参数 //服务参数
...@@ -1272,6 +1267,7 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -1272,6 +1267,7 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
.serveNumber(1) .serveNumber(1)
.servePrice(scheduleServeVar.getServePrice()) .servePrice(scheduleServeVar.getServePrice())
.serveType(scheduleServeVar.getServeType()) .serveType(scheduleServeVar.getServeType())
.serveTypeId(baseServe.getTypeId())
//款式参数 //款式参数
.produceBargainPrice(scheduleServeVar.getProduceBargainPrice()) .produceBargainPrice(scheduleServeVar.getProduceBargainPrice())
//款式id //款式id
...@@ -1591,7 +1587,10 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -1591,7 +1587,10 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
* @param cmd * @param cmd
* @param defaultNodeList * @param defaultNodeList
*/ */
private void setScheduleServe(ScheduleManageCommand cmd, List<TreeProgram> defaultNodeList) { private void setScheduleServe(SubmitScheduleCommand submitScheduleCommand) {
ScheduleManageCommand cmd = submitScheduleCommand.getScheduleManageDTO();
List<TreeProgram> defaultNodeList = submitScheduleCommand.getDefaultNodeList();
List<ScheduleServeCommand> scheduleServeCommandList = cmd.getScheduleServeDTOList(); List<ScheduleServeCommand> scheduleServeCommandList = cmd.getScheduleServeDTOList();
...@@ -1600,10 +1599,11 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -1600,10 +1599,11 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
}); });
//如果defaultNodeList 不为空 根据defaultNodeList的参数设置服务时间 //如果defaultNodeList 不为空 根据defaultNodeList的参数设置服务时间
if (defaultNodeList != null) { if (ListUtil.isNotEmpty(defaultNodeList)) {
defaultNodeList.forEach(defaultNode -> { defaultNodeList.forEach(defaultNode -> {
scheduleServeCommandList scheduleServeCommandList
.stream() .stream()
//服务id或者主服务id等于defaultNode.serveId
.filter(scheduleServe -> defaultNode.getScheduleServeQuery().getServeId().equals(scheduleServe.getServeId()) .filter(scheduleServe -> defaultNode.getScheduleServeQuery().getServeId().equals(scheduleServe.getServeId())
|| defaultNode.getScheduleServeQuery().getServeId().equals(scheduleServe.getMainServeId())) || defaultNode.getScheduleServeQuery().getServeId().equals(scheduleServe.getMainServeId()))
.forEach(scheduleServeCommand -> { .forEach(scheduleServeCommand -> {
...@@ -1614,6 +1614,7 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -1614,6 +1614,7 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
scheduleServeCommand.setStartTime(new Date(schedulePeriod.getStartTime())); scheduleServeCommand.setStartTime(new Date(schedulePeriod.getStartTime()));
scheduleServeCommand.setEndTime(new Date(schedulePeriod.getEndTime())); scheduleServeCommand.setEndTime(new Date(schedulePeriod.getEndTime()));
scheduleServeCommand.setTechnicianId(storeTechnicianPeriod.getTechnicianId()); scheduleServeCommand.setTechnicianId(storeTechnicianPeriod.getTechnicianId());
scheduleServeCommand.setTechnicianIds(String.valueOf(storeTechnicianPeriod.getTechnicianId()));
scheduleServeCommand.setServeNumber(1); scheduleServeCommand.setServeNumber(1);
}); });
}); });
...@@ -1644,30 +1645,9 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -1644,30 +1645,9 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
scheduleServeCommand.setEndTime(mainScheduleServeCommand.getEndTime()); scheduleServeCommand.setEndTime(mainScheduleServeCommand.getEndTime());
}); });
}
/**
* 补充预约店铺信息
*
* @param scheduleManageCommand
*/
private void setDepartment(ScheduleManageCommand scheduleManageCommand) {
StoreManage storeManage = storeManageMapper.selectById(scheduleManageCommand.getDepartmentId());
//设置服务店铺姓名
scheduleManageCommand.setDepartmentName(storeManage.getName());
}
/**
* 设置服务款式信息
*
* @param scheduleManageCommand
*/
private void setSeverProduce(ScheduleManageCommand scheduleManageCommand) {
scheduleManageCommand.setTotalPrice(BigDecimal.ZERO);
scheduleManageCommand.getScheduleServeDTOList() cmd.setTotalPrice(BigDecimal.ZERO);
cmd.getScheduleServeDTOList()
.stream() .stream()
.peek(scheduleServeCmd -> { .peek(scheduleServeCmd -> {
...@@ -1684,8 +1664,6 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -1684,8 +1664,6 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
scheduleServeCmd.setTechnicianName(storeTechnician.getName()); scheduleServeCmd.setTechnicianName(storeTechnician.getName());
scheduleServeCmd.setTechnicianId(storeTechnician.getId()); scheduleServeCmd.setTechnicianId(storeTechnician.getId());
scheduleServeCmd.setServeType(baseType.getName()); scheduleServeCmd.setServeType(baseType.getName());
// scheduleServeCmd.setTechnicianIds(String.valueOf(scheduleServeCmd.getTechnicianId()));
// scheduleServeCmd.setTechnicianNames(storeTechnicianDTO.getName());
//设置价格为服务价格 //设置价格为服务价格
scheduleServeCmd.setPrice(baseServe.getPrice()); scheduleServeCmd.setPrice(baseServe.getPrice());
...@@ -1707,12 +1685,6 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -1707,12 +1685,6 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
//如果有款式就设置款式价格 //如果有款式就设置款式价格
scheduleServeCmd.setPrice(baseProduce.getCurrentPrice()); scheduleServeCmd.setPrice(baseProduce.getCurrentPrice());
// ProducePromotionTime producePromotionTime = producePromotionTimeMapper.selectOne(new LambdaQueryWrapper<ProducePromotionTime>().eq(ProducePromotionTime::getProduceId, scheduleServeCmd.getProduceId()));
//
// //如果在做活动 就设置活动价格
// if (producePromotionTime.isPromotion()) {
// scheduleServeCmd.setPrice(producePromotionTime.getPrice());
// }
} }
scheduleServeCmd.setLengthTime(baseServe.getServiceDuration()); scheduleServeCmd.setLengthTime(baseServe.getServiceDuration());
...@@ -1721,8 +1693,12 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper, ...@@ -1721,8 +1693,12 @@ public class ScheduleManageServiceImpl extends ServiceImpl<ScheduleManageMapper,
}) })
.forEach(scheduleServeCmd -> { .forEach(scheduleServeCmd -> {
//累加总价 //累加总价
scheduleManageCommand.setTotalPrice(scheduleManageCommand.getTotalPrice().add(scheduleServeCmd.getPrice())); cmd.setTotalPrice(cmd.getTotalPrice().add(scheduleServeCmd.getPrice()));
}); });
StoreManage storeManage = storeManageMapper.selectById(cmd.getDepartmentId());
//设置服务店铺姓名
cmd.setDepartmentName(storeManage.getName());
} }
} }
...@@ -96,7 +96,7 @@ public class ScheduleManageController { ...@@ -96,7 +96,7 @@ public class ScheduleManageController {
@ApiOperation("用户更新预约") @ApiOperation("用户更新预约")
@PostMapping("/customer/schedule/updateSchedule") @PostMapping("/customer/schedule/updateSchedule")
public JsonResult<Void> updateSchedule(@RequestHeader String token, public JsonResult<Void> updateSchedule(@RequestHeader String token,
@RequestBody UpdateScheduleCommand cmd) { @RequestBody SubmitScheduleCommand cmd) {
Integer currentCustomerId = Optional.ofNullable(gogirlTokenService.getByToken(token).getCustomerId()) Integer currentCustomerId = Optional.ofNullable(gogirlTokenService.getByToken(token).getCustomerId())
.orElseThrow(() -> new RRException(500, "token不存在")); .orElseThrow(() -> new RRException(500, "token不存在"));
...@@ -191,7 +191,7 @@ public class ScheduleManageController { ...@@ -191,7 +191,7 @@ public class ScheduleManageController {
@ApiOperation("更新预约") @ApiOperation("更新预约")
@PostMapping("/technician/schedule/updateSchedule") @PostMapping("/technician/schedule/updateSchedule")
public JsonResult<Void> updateSchedule(@RequestBody UpdateScheduleCommand cmd) { public JsonResult<Void> updateSchedule(@RequestBody SubmitScheduleCommand cmd) {
scheduleManageService.updateSchedule(cmd); scheduleManageService.updateSchedule(cmd);
return JsonResult.success(); return JsonResult.success();
......
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