Commit f8d73ef7 by unknown

advance 3 day to order

parent e20aa32f
......@@ -1153,8 +1153,11 @@ public class AsmCourseResourceDao extends GenericHibernateDao<AsmCourseresource,
}
private void updatePriceField() {
String sql1 = "delete from asm_courseresource WHERE PriceDate < CURDATE()";
String sql2 = "update asm_courseresource t SET t.MinPrice = false, t.MinPrice2 = false WHERE t.PriceDate >= CURDATE()";
// String sql1 = "delete from asm_courseresource WHERE PriceDate < CURDATE()";
// String sql2 = "update asm_courseresource t SET t.MinPrice = false, t.MinPrice2 = false WHERE t.PriceDate >= CURDATE()";
//modify by caosy for delay 2 day to delete resource
String sql1 = "delete from asm_courseresource WHERE PriceDate < DATE_SUB(CURDATE(),INTERVAL 3 day)";
String sql2 = "update asm_courseresource t SET t.MinPrice = false, t.MinPrice2 = false WHERE t.PriceDate >= DATE_SUB(CURDATE(),INTERVAL 3 day)";
this.getSession().createSQLQuery(sql1).executeUpdate();
this.getSession().createSQLQuery(sql2).executeUpdate();
......@@ -1191,7 +1194,8 @@ public class AsmCourseResourceDao extends GenericHibernateDao<AsmCourseresource,
String sql = "SELECT CASE WHEN LOCATE(CONCAT('=540p=', minPrice),datas) THEN SUBSTRING_INDEX(SUBSTRING(datas from 1 for LOCATE(CONCAT('=540p=', minPrice),datas)-1),',',-1) ELSE minId END as id"
+ " FROM (SELECT SUBSTRING_INDEX(GROUP_CONCAT(salePrice ORDER BY salePrice,teeTime ASC),',',1) minPrice,GROUP_CONCAT(id,'=',teeTime,'p=',salePrice) datas,SUBSTRING_INDEX(GROUP_CONCAT(id ORDER BY salePrice,teeTime ASC),',',1) minId"
+ " FROM asm_courseresource t "
+ " WHERE t.PriceDate >= CURDATE() "
// + " WHERE t.PriceDate >= CURDATE() "
+ " WHERE t.PriceDate >= DATE_SUB(CURDATE(),INTERVAL 3 day) "
+ " and t.courseStatus!="
+ CourseStatusEnum.INVALID.getValue()
+ " and resourceType!="
......@@ -1229,7 +1233,8 @@ public class AsmCourseResourceDao extends GenericHibernateDao<AsmCourseresource,
String sql = "SELECT CASE WHEN LOCATE(CONCAT('=540p=', minPrice2),datas) THEN SUBSTRING_INDEX(SUBSTRING(datas from 1 for LOCATE(CONCAT('=540p=', minPrice2),datas)-1),',',-1) ELSE minId END as id"
+ " FROM (SELECT SUBSTRING_INDEX(GROUP_CONCAT(sponsorPrice ORDER BY sponsorPrice,teeTime ASC),',',1) minPrice2,GROUP_CONCAT(id,'=',teeTime,'p=',sponsorPrice) datas,SUBSTRING_INDEX(GROUP_CONCAT(id ORDER BY sponsorPrice,teeTime ASC),',',1) minId"
+ " FROM asm_courseresource t "
+ " WHERE t.PriceDate >= CURDATE() "
// + " WHERE t.PriceDate >= CURDATE() "
+ " WHERE t.PriceDate >= DATE_SUB(CURDATE(),INTERVAL 3 day) "
+ " and t.courseStatus!="
+ CourseStatusEnum.INVALID.getValue()
+ " and resourceType!="
......@@ -1311,7 +1316,10 @@ public class AsmCourseResourceDao extends GenericHibernateDao<AsmCourseresource,
if (asmCourseresourceQuery.getDate() != null) {
criteria.add(Restrictions.eq("priceDate", asmCourseresourceQuery.getDate()));
}
criteria.add(Restrictions.sqlRestriction("PriceDate >= date_sub(curdate(),interval -ReserveDay day)"));
//add by caosy:can order today resource when from admin
if(!asmCourseresourceQuery.isFromAdmin()){
criteria.add(Restrictions.sqlRestriction("PriceDate >= date_sub(curdate(),interval -ReserveDay day)"));
}
if (asmCourseresourceQuery.getTeeTime() != null) {
if (asmCourseresourceQuery.getTeeTime() == -1) {
AsmCourseresource asmCourseresource = this.getMinPriceAsmCourseresource(asmCourseresourceQuery.getDate(), asmCourseresourceQuery.getCourseId());
......
package com.ctrip.fun.golf.dao.product;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import org.hibernate.Criteria;
import org.hibernate.Query;
import org.hibernate.criterion.Order;
import org.hibernate.criterion.Projections;
import org.hibernate.criterion.Restrictions;
import org.hibernate.transform.Transformers;
import com.ctrip.fun.common.core.util.BeanConverter;
import com.ctrip.fun.common.core.util.DateUtil;
import com.ctrip.fun.common.vo.SortDirectionEnum;
import com.ctrip.fun.common.vo.order.OrderResourceBean;
import com.ctrip.fun.common.vo.product.ProductTypeEnum;
import com.ctrip.fun.common.vo.product.ResourcePriceBean;
import com.ctrip.fun.common.vo.product.ResourcePriceQuery;
import com.ctrip.fun.common.vo.product.ResourcePriceStatusEnum;
import com.ctrip.fun.golf.dao.GenericHibernateDao;
import com.ctrip.fun.golf.domain.order.Invoiceinfo;
import com.ctrip.fun.golf.domain.product.ResourcePrice;
import com.ctrip.fun.golf.vo.OrderQueryBean;
import com.ctrip.fun.golf.vo.PagedEntityBean;
/**
......@@ -115,4 +122,33 @@ public class ResourcePriceDao extends GenericHibernateDao<ResourcePrice, Integer
return (ResourcePrice) query.uniqueResult();
}
public List<OrderResourceBean> getAllResourceList(OrderQueryBean queryBean){
StringBuffer sb = new StringBuffer();
sb.append("select pr.ResourceID orderResourceId, pcr.`NAME` resourceName, pcr.Service service, pr.SalePrice salePrice, pr.CashRebate cashRebate, pr.memberCashRebate memberCashRebate, pr.SalePrice-pr.memberPrice memberUnitAmount ");
sb.append("from prd_resourceprice pr ");
sb.append("join prd_courseresource pcr on pr.ResourceID = pcr.ID and pcr.teeTime=:teetime and pcr.PaymentType=:paymentType and pcr.`Status`=1 ");
sb.append("join prd_courseproduct pcp on pcr.ProductID = pcp.ID and pcp.Type in (:productType) and pcp.PublishDate<=:priceDate and pcp.OfflineDate>=:priceDate and pcp.`Status`= 1 ");
sb.append("join prd_course pc on pc.ID = pcp.CourseID and pc.`Status`=1 and pc.ID=:courseId ");
sb.append("where pr.priceDate=:priceDate and pr.`Status`=1");
Query query = this.getSession().createSQLQuery(sb.toString());
query.setParameter("teetime", queryBean.getTeeTime());
query.setParameter("paymentType", queryBean.getPaymentType());
query.setParameterList("productType", new Integer[]{ProductTypeEnum.NORMAL.getValue(),ProductTypeEnum.OFFLINE.getValue(),ProductTypeEnum.CALLLINE.getValue()});
query.setParameter("priceDate", queryBean.getPriceDate());
query.setParameter("courseId", queryBean.getCourseId());
query.setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP);
List<Map<String, Object>> list = query.list();
List<OrderResourceBean> result = new ArrayList<OrderResourceBean>();
if(list != null){
for (Map<String, Object> map : list) {
OrderResourceBean bean = new OrderResourceBean();
BeanConverter.populate(bean, map);
result.add(bean);
}
}
return result;
}
}
......@@ -1106,6 +1106,7 @@ public class OpCourseOrderService extends AbstractOpOrderService<CourseOrderProc
queryBean.setTeeTime(orderResourceQuery.getTeeTime());
// queryBean.setSalePrice(orderBean.getSalePrice().doubleValue()); //修改打球时间需要提示当前售价,所以不能限制
List<AsmCourseresource> asmCourseresources = this.asmCourseResourceDao.queryAsmCourseresource(queryBean);
List<OrderResourceBean> orderResourceBeans = null;
if (asmCourseresources != null) {
orderResourceBeans = new ArrayList<OrderResourceBean>();
......@@ -1119,9 +1120,21 @@ public class OpCourseOrderService extends AbstractOpOrderService<CourseOrderProc
orderResourceBeans.add(orderResourceBean);
}
}
/* if(asmCourseresources == null || asmCourseresources.size() <= 0){
if(DateUtil.getDistinceDay(orderResourceQuery.getTeeDate(), new Date())>0){
//代表过期的资源
orderResourceBeans = getOutDateResource(queryBean);
}
}*/
return orderResourceBeans;
}
public List<OrderResourceBean> getOutDateResource(OrderQueryBean queryBean){
return resourcePriceDao.getAllResourceList(queryBean);
}
public OrderItemDao getOrderItemDao() {
return orderItemDao;
}
......
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