Commit f8d73ef7 by unknown

advance 3 day to order

parent e20aa32f
...@@ -1153,8 +1153,11 @@ public class AsmCourseResourceDao extends GenericHibernateDao<AsmCourseresource, ...@@ -1153,8 +1153,11 @@ public class AsmCourseResourceDao extends GenericHibernateDao<AsmCourseresource,
} }
private void updatePriceField() { private void updatePriceField() {
String sql1 = "delete from asm_courseresource WHERE 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()"; // 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(sql1).executeUpdate();
this.getSession().createSQLQuery(sql2).executeUpdate(); this.getSession().createSQLQuery(sql2).executeUpdate();
...@@ -1191,7 +1194,8 @@ public class AsmCourseResourceDao extends GenericHibernateDao<AsmCourseresource, ...@@ -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" 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 (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 " + " FROM asm_courseresource t "
+ " WHERE t.PriceDate >= CURDATE() " // + " WHERE t.PriceDate >= CURDATE() "
+ " WHERE t.PriceDate >= DATE_SUB(CURDATE(),INTERVAL 3 day) "
+ " and t.courseStatus!=" + " and t.courseStatus!="
+ CourseStatusEnum.INVALID.getValue() + CourseStatusEnum.INVALID.getValue()
+ " and resourceType!=" + " and resourceType!="
...@@ -1229,7 +1233,8 @@ public class AsmCourseResourceDao extends GenericHibernateDao<AsmCourseresource, ...@@ -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" 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 (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 " + " FROM asm_courseresource t "
+ " WHERE t.PriceDate >= CURDATE() " // + " WHERE t.PriceDate >= CURDATE() "
+ " WHERE t.PriceDate >= DATE_SUB(CURDATE(),INTERVAL 3 day) "
+ " and t.courseStatus!=" + " and t.courseStatus!="
+ CourseStatusEnum.INVALID.getValue() + CourseStatusEnum.INVALID.getValue()
+ " and resourceType!=" + " and resourceType!="
...@@ -1311,7 +1316,10 @@ public class AsmCourseResourceDao extends GenericHibernateDao<AsmCourseresource, ...@@ -1311,7 +1316,10 @@ public class AsmCourseResourceDao extends GenericHibernateDao<AsmCourseresource,
if (asmCourseresourceQuery.getDate() != null) { if (asmCourseresourceQuery.getDate() != null) {
criteria.add(Restrictions.eq("priceDate", asmCourseresourceQuery.getDate())); criteria.add(Restrictions.eq("priceDate", asmCourseresourceQuery.getDate()));
} }
//add by caosy:can order today resource when from admin
if(!asmCourseresourceQuery.isFromAdmin()){
criteria.add(Restrictions.sqlRestriction("PriceDate >= date_sub(curdate(),interval -ReserveDay day)")); criteria.add(Restrictions.sqlRestriction("PriceDate >= date_sub(curdate(),interval -ReserveDay day)"));
}
if (asmCourseresourceQuery.getTeeTime() != null) { if (asmCourseresourceQuery.getTeeTime() != null) {
if (asmCourseresourceQuery.getTeeTime() == -1) { if (asmCourseresourceQuery.getTeeTime() == -1) {
AsmCourseresource asmCourseresource = this.getMinPriceAsmCourseresource(asmCourseresourceQuery.getDate(), asmCourseresourceQuery.getCourseId()); AsmCourseresource asmCourseresource = this.getMinPriceAsmCourseresource(asmCourseresourceQuery.getDate(), asmCourseresourceQuery.getCourseId());
......
package com.ctrip.fun.golf.dao.product; package com.ctrip.fun.golf.dao.product;
import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Map;
import org.hibernate.Criteria; import org.hibernate.Criteria;
import org.hibernate.Query; import org.hibernate.Query;
import org.hibernate.criterion.Order; import org.hibernate.criterion.Order;
import org.hibernate.criterion.Projections; import org.hibernate.criterion.Projections;
import org.hibernate.criterion.Restrictions; 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.core.util.DateUtil;
import com.ctrip.fun.common.vo.SortDirectionEnum; 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.ResourcePriceBean;
import com.ctrip.fun.common.vo.product.ResourcePriceQuery; import com.ctrip.fun.common.vo.product.ResourcePriceQuery;
import com.ctrip.fun.common.vo.product.ResourcePriceStatusEnum; import com.ctrip.fun.common.vo.product.ResourcePriceStatusEnum;
import com.ctrip.fun.golf.dao.GenericHibernateDao; import com.ctrip.fun.golf.dao.GenericHibernateDao;
import com.ctrip.fun.golf.domain.order.Invoiceinfo; import com.ctrip.fun.golf.domain.order.Invoiceinfo;
import com.ctrip.fun.golf.domain.product.ResourcePrice; import com.ctrip.fun.golf.domain.product.ResourcePrice;
import com.ctrip.fun.golf.vo.OrderQueryBean;
import com.ctrip.fun.golf.vo.PagedEntityBean; import com.ctrip.fun.golf.vo.PagedEntityBean;
/** /**
...@@ -115,4 +122,33 @@ public class ResourcePriceDao extends GenericHibernateDao<ResourcePrice, Integer ...@@ -115,4 +122,33 @@ public class ResourcePriceDao extends GenericHibernateDao<ResourcePrice, Integer
return (ResourcePrice) query.uniqueResult(); 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 ...@@ -1106,6 +1106,7 @@ public class OpCourseOrderService extends AbstractOpOrderService<CourseOrderProc
queryBean.setTeeTime(orderResourceQuery.getTeeTime()); queryBean.setTeeTime(orderResourceQuery.getTeeTime());
// queryBean.setSalePrice(orderBean.getSalePrice().doubleValue()); //修改打球时间需要提示当前售价,所以不能限制 // queryBean.setSalePrice(orderBean.getSalePrice().doubleValue()); //修改打球时间需要提示当前售价,所以不能限制
List<AsmCourseresource> asmCourseresources = this.asmCourseResourceDao.queryAsmCourseresource(queryBean); List<AsmCourseresource> asmCourseresources = this.asmCourseResourceDao.queryAsmCourseresource(queryBean);
List<OrderResourceBean> orderResourceBeans = null; List<OrderResourceBean> orderResourceBeans = null;
if (asmCourseresources != null) { if (asmCourseresources != null) {
orderResourceBeans = new ArrayList<OrderResourceBean>(); orderResourceBeans = new ArrayList<OrderResourceBean>();
...@@ -1119,9 +1120,21 @@ public class OpCourseOrderService extends AbstractOpOrderService<CourseOrderProc ...@@ -1119,9 +1120,21 @@ public class OpCourseOrderService extends AbstractOpOrderService<CourseOrderProc
orderResourceBeans.add(orderResourceBean); orderResourceBeans.add(orderResourceBean);
} }
} }
/* if(asmCourseresources == null || asmCourseresources.size() <= 0){
if(DateUtil.getDistinceDay(orderResourceQuery.getTeeDate(), new Date())>0){
//代表过期的资源
orderResourceBeans = getOutDateResource(queryBean);
}
}*/
return orderResourceBeans; return orderResourceBeans;
} }
public List<OrderResourceBean> getOutDateResource(OrderQueryBean queryBean){
return resourcePriceDao.getAllResourceList(queryBean);
}
public OrderItemDao getOrderItemDao() { public OrderItemDao getOrderItemDao() {
return orderItemDao; 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