Commit a7ab2227 by unknown

add the modify teetime for eventactivity

parent ea0482a5
......@@ -48,5 +48,22 @@ public class OpEventActivityOrderController extends
response.setMessage(ResponseStatusEnum.SUCCESS.getMsg());
return response;
}
/**
* 确认赛事资源teetime
*
* @param request
* @return Response<Serializable> Response<Serializable>
*/
@ResponseBody
@RequestMapping(value = "/confirmEventActivityOrderResourceTeeTime", method = RequestMethod.POST)
public Response<Serializable> confirmEventActivityOrderResourceTeeTime(@RequestBody Request<EventActivityOrderProcessBean> request) {
EventActivityOrderProcessBean orderProcessBean = request.getBody();
opEventActivityOrderService.confirmEventActivityOrderResourceTeeTime(orderProcessBean);
Response<Serializable> response = new Response<Serializable>();
response.setStatus(ResponseStatusEnum.SUCCESS.getValue());
response.setMessage(ResponseStatusEnum.SUCCESS.getMsg());
return response;
}
}
......@@ -195,6 +195,16 @@ public class CourseResourceDao extends GenericHibernateDao<CourseResource, Integ
return false;
return true;
}
public List<Integer> checkEventActivityValidResource(int productId, int teetime, Date playDate) {
String dateStr = DateUtil.getDateStr(playDate);
String sql = "select cr.ID from prd_courseResource as cr, prd_resourceprice as rp where cr.productId = "
+ productId + " and cr.teeTime="+teetime
+ " and cr.status != "
+ CourseResourceStatusEnum.INVALID.getValue()
+ " and cr.id = rp.ResourceID " + " and rp.priceDate = \"" + dateStr + "\"";
List<Integer> list = this.getSession().createSQLQuery(sql).list();
return list;
}
public List<ResourcePriceUnion> queryResourcePriceUnionByProductId(int productId, Date date) {
String dateStr = DateUtil.getDateStr(date);
......
......@@ -636,6 +636,18 @@ public abstract class AbstractOpOrderService<H extends AbstractOrderProcessBean,
this.saveOrUpdatePayInfo(orderProcessBean);
return order;
}
/**
* add by caosy: just order logs
* @param orderProcessBean
* @return
*/
protected void processSuccessedOrderLog(H orderProcessBean) {
OrderProcessLog orderProcessLog = new OrderProcessLog();
BeanConverter.copyProperties(orderProcessLog, orderProcessBean);
orderProcessLog.setSuccess(true);
orderProcessLog.setProcessDesc(orderProcessBean.getProcessDesc());
orderProcessLogDao.save(orderProcessLog);
}
protected OrderPayinfoBean findPayInfo(Integer orderId, List<OrderPayinfoBean> payinfos) {
for (OrderPayinfoBean payinfo : payinfos) {
......
......@@ -861,6 +861,21 @@ public class EventActivityOrderService extends
eventActivityOrderItem.setSupplierName(supplier.getName());
eventActivityOrderItem.setProductManager(courseProduct.getProductManager());
eventActivityOrderItem.setRealTimeTeeTimeType(courseResource.getRealTimeTeeTimeType());
//add by caosy:默认将teetime,打球具体时间点加入到表中
String teeTimeStr = null;
if (courseResource.getTeeTime() != null) {
int hour = courseResource.getTeeTime() / 60;
int minute = courseResource.getTeeTime() % 60;
String minuteStr = "";
if (minute < 10) {
minuteStr = "0" + minute;
} else {
minuteStr = "" + minute;
}
teeTimeStr = hour + ":" + minuteStr;
}
eventActivityOrderItem.setTeeTime(teeTimeStr);
this.getEventActivityOrderItemDao().save(eventActivityOrderItem);
try {
userService.saveOrderedCourse(asmCourseResource.getCourseId(),
......
......@@ -96,6 +96,16 @@ public class EventCustomerInfoService extends
eventCustomerInfoDao.Update(eventCustomerInfo);
}
}
public void updateGroupNumByOrderId(Integer orderId, int groupNum, int resourceId) {
List<EventCustomerInfo> eventCustomerInfos = eventCustomerInfoDao
.getCustomerInfoListByOrderId(orderId);
for (EventCustomerInfo eventCustomerInfo : eventCustomerInfos) {
eventCustomerInfo.setGroupNum(groupNum);
eventCustomerInfo.setResourceId(resourceId);
eventCustomerInfoDao.Update(eventCustomerInfo);
}
}
public List<EventCustomerInfoBean> getEventCustomerInfoRankList(
EventCustomerInfoQuery eventCustomerInfoQuery) {
......
......@@ -627,6 +627,8 @@ public class OpEventActivityOrderService
if (orderItems != null && orderItems.size() > 0) {
orderItem = orderItems.get(0);
BeanConverter.copyProperties(orderBean, orderItem);
//add by caosy
orderBean.setProductId(orderItem.getCourseProductId());
courseProduct = this.courseProductDao.findById(orderItem.getCourseProductId());
orderBean.setAnnouncements(courseProduct.getAnnouncements());
orderBean.setGroupFlag(orderItem.isGroupFlag());
......@@ -1053,11 +1055,39 @@ public class OpEventActivityOrderService
StringBuilder desc = new StringBuilder("原TeeTime[").append(orderItem.getTeeTime())
.append("] 改为 [").append(orderProcessBean.getTeeTime()).append("]");
orderItem.setTeeTime(orderProcessBean.getTeeTime());
this.eventActivityOrderItemDao.update(orderItem);
orderProcessBean.setProcessDesc(desc.toString());
String newTeeTime = orderProcessBean.getTeeTime();
if(newTeeTime != null){
String[] teetimes = newTeeTime.split(":");
if(teetimes != null && teetimes.length ==2 ){
int groupNum = Integer.valueOf(teetimes[0])*60 + Integer.valueOf(teetimes[1]);
List<Integer> resourceIds = this.courseResourceService.getResourceByTeeTimeAndDate(orderProcessBean.getProductId(), groupNum, orderItem.getPlayDate());
if(resourceIds != null && resourceIds.size() > 0){
//变更后,在orderItem表里面将资源id变更掉
orderItem.setResourceId(resourceIds.get(0));
this.eventActivityOrderItemDao.update(orderItem);
orderProcessBean.setProcessDesc(desc.toString());
this.changeCustomerInfo(orderProcessBean, resourceIds.get(0));
}else{
throw new OrderException(ResponseStatusEnum.FAIL.getValue(), "该teetime没有资源,请更换!");
}
}
}
}
}
private void changeCustomerInfo(EventActivityOrderProcessBean orderProcessBean, int resourceId){
int groupNum = 0;
String teetime = orderProcessBean.getTeeTime();
if(teetime != null){
String[] teetimes = teetime.split(":");
if(teetimes != null && teetimes.length ==2 ){
groupNum = Integer.valueOf(teetimes[0])*60 + Integer.valueOf(teetimes[1]);
}
eventCustomerInfoService.updateGroupNumByOrderId(orderProcessBean.getOrderId(), groupNum, resourceId);
}
}
public EventCustomerInfoService getEventCustomerInfoService() {
return eventCustomerInfoService;
}
......@@ -1071,5 +1101,11 @@ public class OpEventActivityOrderService
this.processSuccessedOrder(orderProcessBean);
this.sendMsg(orderProcessBean);
}
public void confirmEventActivityOrderResourceTeeTime(EventActivityOrderProcessBean orderProcessBean) {
this.changeResource(orderProcessBean);
this.processSuccessedOrderLog(orderProcessBean);
this.sendMsg(orderProcessBean);
}
}
......@@ -1307,7 +1307,14 @@ public class CourseResourceService extends
}
this.courseResourceDao.setReservetime(courseResourceBatchBean);
}
/**
*add by caosy: get the resource by teetime
*
* */
public List<Integer> getResourceByTeeTimeAndDate(int productId, int teetime, Date playDate){
return this.courseResourceDao.checkEventActivityValidResource(productId, teetime, playDate);
}
/**
* 设置封面
*
......
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 sign in to comment