Commit 7771004d by chongli

会服用户订单统计模块

parent afa3323e
package com.ctrip.fun.golf.api.user;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import com.ctrip.fun.common.vo.PagedResponseBean;
import com.ctrip.fun.common.vo.Request;
import com.ctrip.fun.common.vo.Response;
import com.ctrip.fun.common.vo.ResponseStatusEnum;
import com.ctrip.fun.common.vo.market.UserOrderBehaviourStatisticsBean;
import com.ctrip.fun.common.vo.statistics.query.UserStatisticsQuery;
import com.ctrip.fun.golf.api.statistics.AbstractStatisticsController;
import com.ctrip.fun.golf.service.user.UserOrderBehaviourStatisticsService;
@Controller
@RequestMapping(value = "/userOrderBehaviour")
public class UserOrderBehaviourStatisticsController extends AbstractStatisticsController {
@Autowired
private UserOrderBehaviourStatisticsService userOrderBehaviourStatisticsService = null;
/*
*没有下单用户信息列表
*/
@ResponseBody
@RequestMapping(value = "/listUserOrderBehaviour", method = RequestMethod.POST)
public Response<PagedResponseBean<UserOrderBehaviourStatisticsBean>> listUserOrderBehaviour(@RequestBody Request<UserStatisticsQuery> bean) {
checkParameters(bean);
Response<PagedResponseBean<UserOrderBehaviourStatisticsBean>> response = new Response<PagedResponseBean<UserOrderBehaviourStatisticsBean>>();
PagedResponseBean<UserOrderBehaviourStatisticsBean> result = userOrderBehaviourStatisticsService.listUserOrderBehaviour(bean.getBody());
response.setStatusEnum(ResponseStatusEnum.SUCCESS);
response.setBody(result);
return response;
}
/*
*查询某个球场,一段时间内,周一到周日,用户的下单情况。
*/
@ResponseBody
@RequestMapping(value = "/listCourseUserOrderInfo", method = RequestMethod.POST)
public Response<PagedResponseBean<UserOrderBehaviourStatisticsBean>> listCourseUserOrderInfo(@RequestBody Request<UserStatisticsQuery> bean) {
checkParameters(bean);
Response<PagedResponseBean<UserOrderBehaviourStatisticsBean>> response = new Response<PagedResponseBean<UserOrderBehaviourStatisticsBean>>();
PagedResponseBean<UserOrderBehaviourStatisticsBean> result = userOrderBehaviourStatisticsService.listCourseUserOrderInfo(bean.getBody());
response.setStatusEnum(ResponseStatusEnum.SUCCESS);
response.setBody(result);
return response;
}
/*
*查询某个用户在某个球场的订单信息
*/
@ResponseBody
@RequestMapping(value = "/listValidUserOrder", method = RequestMethod.POST)
public Response<PagedResponseBean<UserOrderBehaviourStatisticsBean>> listValidUserOrder(@RequestBody Request<UserStatisticsQuery> bean) {
checkParameters(bean);
Response<PagedResponseBean<UserOrderBehaviourStatisticsBean>> response = new Response<PagedResponseBean<UserOrderBehaviourStatisticsBean>>();
PagedResponseBean<UserOrderBehaviourStatisticsBean> result = userOrderBehaviourStatisticsService.listValidUserOrder(bean.getBody());
response.setStatusEnum(ResponseStatusEnum.SUCCESS);
response.setBody(result);
return response;
}
}
package com.ctrip.fun.golf.service.user;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import com.ctrip.fun.common.vo.PagedResponseBean;
import com.ctrip.fun.common.vo.market.UserOrderBehaviourStatisticsBean;
import com.ctrip.fun.common.vo.statistics.query.UserStatisticsQuery;
import com.ctrip.fun.golf.dao.user.UserOrderBehaviourStatisticsDao;
import com.ctrip.fun.golf.vo.PagedEntityBean;
public class UserOrderBehaviourStatisticsService {
@Autowired
private UserOrderBehaviourStatisticsDao userOrderBehaviourStatisticsDao = null;
public PagedResponseBean<UserOrderBehaviourStatisticsBean> listUserOrderBehaviour(
UserStatisticsQuery query) {
PagedResponseBean<UserOrderBehaviourStatisticsBean> pagedResponseBean = new PagedResponseBean<UserOrderBehaviourStatisticsBean>();
PagedEntityBean<UserOrderBehaviourStatisticsBean> pagedEntityBean;
switch(query.getStatisticsType()){
case 1:
pagedEntityBean = userOrderBehaviourStatisticsDao.listSinglePlaceOrderUser(query);
break;
case 2:
pagedEntityBean = userOrderBehaviourStatisticsDao.listSingleNonOrderUser(query);
break;
case 3:
pagedEntityBean = userOrderBehaviourStatisticsDao.listEventPlaceOrderUser(query);
break;
default:
pagedEntityBean = userOrderBehaviourStatisticsDao.listEventNonOrderUser(query);
break;
}
List<UserOrderBehaviourStatisticsBean> list = (List<UserOrderBehaviourStatisticsBean>) pagedEntityBean
.getResult();
pagedResponseBean.setCount(Integer.valueOf(String
.valueOf(pagedEntityBean.getCount())));
pagedResponseBean.setResult(list);
return pagedResponseBean;
}
public PagedResponseBean<UserOrderBehaviourStatisticsBean> listCourseUserOrderInfo(
UserStatisticsQuery query) {
PagedResponseBean<UserOrderBehaviourStatisticsBean> pagedResponseBean = new PagedResponseBean<UserOrderBehaviourStatisticsBean>();
PagedEntityBean<UserOrderBehaviourStatisticsBean> pagedEntityBean;
if(query.getDayOfWeek()==0){
pagedEntityBean = userOrderBehaviourStatisticsDao.listCourseUserOrderInfoAllWeek(query);
}else{
pagedEntityBean = userOrderBehaviourStatisticsDao.listCourseUserOrderInfo(query);
}
List<UserOrderBehaviourStatisticsBean> list = (List<UserOrderBehaviourStatisticsBean>) pagedEntityBean
.getResult();
pagedResponseBean.setCount(Integer.valueOf(String
.valueOf(pagedEntityBean.getCount())));
pagedResponseBean.setResult(list);
return pagedResponseBean;
}
public PagedResponseBean<UserOrderBehaviourStatisticsBean> listValidUserOrder(UserStatisticsQuery query) {
PagedResponseBean<UserOrderBehaviourStatisticsBean> pagedResponseBean = new PagedResponseBean<UserOrderBehaviourStatisticsBean>();
PagedEntityBean<UserOrderBehaviourStatisticsBean> pagedEntityBean;
pagedEntityBean = userOrderBehaviourStatisticsDao.listValidOrderInfo(query);
List<UserOrderBehaviourStatisticsBean> list = (List<UserOrderBehaviourStatisticsBean>) pagedEntityBean
.getResult();
pagedResponseBean.setCount(Integer.valueOf(String
.valueOf(pagedEntityBean.getCount())));
pagedResponseBean.setResult(list);
return pagedResponseBean;
}
}
......@@ -23,6 +23,10 @@
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<bean name="userOrderBehaviourStatisticsDao" class="com.ctrip.fun.golf.dao.user.UserOrderBehaviourStatisticsDao">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<bean name="userDestinationStatisticsDao" class="com.ctrip.fun.golf.dao.statistics.user.UserDestinationStatisticsDao">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
......@@ -37,6 +41,7 @@
<bean name="tourOrderStatisticsService" class="com.ctrip.fun.golf.service.statistics.order.TourOrderStatisticsService"></bean>
<bean name="rechargeOrderStatisticsService" class="com.ctrip.fun.golf.service.statistics.order.RechargeOrderStatisticsService"></bean>
<bean name="userLoginStatisticsService" class="com.ctrip.fun.golf.service.statistics.user.UserLoginStatisticsService"></bean>
<bean name="userOrderBehaviourStatisticsService" class="com.ctrip.fun.golf.service.user.UserOrderBehaviourStatisticsService"></bean>
<bean name="userDestinationStatisticsService" class="com.ctrip.fun.golf.service.statistics.user.UserDestinationStatisticsService"></bean>
<bean name="courseUserStatisticsService" class="com.ctrip.fun.golf.service.statistics.course.CourseUserStatisticsService"></bean>
......
package com.ctrip.fun.golf.dao.statistics.user;
import com.ctrip.fun.common.core.util.DateUtil;
import com.ctrip.fun.common.vo.market.RmdCodeReportQuery;
import com.ctrip.fun.common.vo.market.UserOrderBehaviourStatisticsBean;
import com.ctrip.fun.common.vo.statistics.query.UserStatisticsQuery;
import com.ctrip.fun.golf.dao.user.UserOrderBehaviourStatisticsDao;
import com.ctrip.fun.golf.vo.PagedEntityBean;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.Locale;
import java.util.Map;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations={"classpath*:*.spring.xml"})
public class UserOrderBehaviourStatisticsDaoTest{
@Autowired
private UserOrderBehaviourStatisticsDao userOrderBehaviourStatisticsDao;
@Test
public void testListNonOrderUser() throws Exception {
UserStatisticsQuery query = new UserStatisticsQuery();
DateUtil.parseDate("2016-02-05");
query.setSearchDateStart(DateUtil.parseDate("2016-02-05"));
query.setSearchDateEnd(DateUtil.parseDate("2019-02-05"));
query.setDayOfWeek(1);
query.setCourseName("上海天马乡村高尔夫");
query.setPagerOffset(1);
query.setPagerPerPage(10);
PagedEntityBean<UserOrderBehaviourStatisticsBean> list = userOrderBehaviourStatisticsDao.listValidOrderInfo(null);
List<UserOrderBehaviourStatisticsBean> ha = (List<UserOrderBehaviourStatisticsBean>) list.getResult();
for(UserOrderBehaviourStatisticsBean bean:ha){
System.out.println(bean.getMobileNo());
}
System.out.println(list.getResult());
}
@Test
public void testListOrderUser() throws Exception {
}
}
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