发表于: 2018-01-09 23:03:55

1 547


今天完成的事情:

1.通宵调接口

@RequestMapping(value = "/a/u/userOrder/score", method = RequestMethod.POST)
public String userOrderByScore(HttpServletRequest request,
ModelMap model, Long[] orderIdsArray,Integer orderType,BigDecimal orderPrice,Integer starPrice,String orderName) throws Exception {
List<Long> orderIds=Arrays.asList(orderIdsArray);
List<Data> dataList=new ArrayList <>();
List<UserOrder> userOrders=new ArrayList <>();
List<Lesson> lessons=new ArrayList <>();
List<Order> orders=new ArrayList <>();
List<Long> periodIdsOfLesson=new ArrayList <>();
List<Period> periodsOfLesson=new ArrayList <>();
List<Long> orderedPeriodIds=new ArrayList <>();
String paperUrls="";

try {
log.info("=====获取用户ID=====");
String token = CookieUtil.getCookie(request, "token");
String[] mToken = DesUtil.getStrM(token).split(",");
Long uid = Long.parseLong(mToken[0]);
User user=userService.getObjectById(uid);
if (orderType==1){
dataList=dataService.getObjectsByIds(orderIds);
Integer i=0;

for (Long dataId:orderIds
) {
UserOrder userOrder= InitPOJP.initUserOrder(uid,dataId,4,dataList.get(i).getPrice(),0,dataList.get(i).getPeriodName(),payUtil.createOutTradeNo());

userOrders.add(userOrder);
Order order=InitPOJP.initOrder(payUtil.createOutTradeNo(),"",0,0,uid,3,dataId,dataList.get(i).getPeriodName());
orders.add(order);
paperUrls+=dataList.get(i).getPeriodName()+"["+dataList.get(i).getPaperUrl()+"]";
i++;
}

user.setLearnBuy(userOrders.size()+user.getLearnBuy());
user.setScore(user.getScore()-starPrice);
userService.update(user);
userOrderService.insertList(userOrders);
orderService.insertList(orders);
boolean sendSuccess=emailOfSendCloudUtil.sendPaperUrl(user.getMail(),user.getName(),"所有资料",paperUrls,true);
if (sendSuccess){
model.addAttribute("code",0);
}else {
model.addAttribute("code",-6);
}
}else if (orderType==2){
Period period=periodService.getObjectById(orderIds.get(0));
UserOrder userOrder=InitPOJP.initUserOrder(uid,orderIds.get(0),orderType,period.getMoneyPrice(),period.getStarPrice(),period.getName(),payUtil.createOutTradeNo());
userOrderService.insert(userOrder);
Order order=InitPOJP.initOrder(payUtil.createOutTradeNo(),"",0,0,uid,2,orderIds.get(0),period.getName());
orderService.insert(order);
user.setScore(user.getScore()-starPrice);
userService.update(user);
model.addAttribute("code",0);
}else if (orderType==3){
Lesson lesson=lessonService.getObjectById(orderIds.get(0));
//          保存课程购买状态
           UserOrder userOrder=InitPOJP.initUserOrder(uid,lesson.getId(),1,orderPrice,starPrice,lesson.getName(),payUtil.createOutTradeNo());
userOrderService.insert(userOrder);
Order order=InitPOJP.initOrder(payUtil.createOutTradeNo(),"",0,0,uid,1,lesson.getId(),lesson.getName());
orderService.insert(order);
//          保存课程下课时购买状态
//          查询课程包含的课时
           Map<String,Object> periodsParams=DynamicSQL.getPeriodOfSubject(orderIds.get(0),0);
periodIdsOfLesson=periodService.getIdsByDynamicCondition(Period.class,periodsParams,0,Integer.MAX_VALUE);
periodsOfLesson=periodService.getObjectsByIds(periodIdsOfLesson);
for (Period period:periodsOfLesson
) {
Map<String,Object> orderedPeriodsParams=DynamicSQL.getOrdered(2,period.getId(),uid);
orderedPeriodIds=userOrderService.getIdsByDynamicCondition(UserOrder.class,orderedPeriodsParams,0,Integer.MAX_VALUE);
if (orderedPeriodIds.size()==0){}
UserOrder userOrderPeriodOfLesson=InitPOJP.initUserOrder(uid,period.getId(),2,period.getMoneyPrice(),period.getStarPrice(),period.getName(),payUtil.createOutTradeNo());
userOrderService.insert(userOrderPeriodOfLesson);
Order orderPeriodOflesson=InitPOJP.initOrder(payUtil.createOutTradeNo(),"",0,0,uid,3,period.getId(),period.getName());
orderService.insert(orderPeriodOflesson);
}
user.setScore(user.getScore()-starPrice);
userService.update(user);
model.addAttribute("code",0);
}

}catch (Exception e){
e.printStackTrace();
model.addAttribute("code",-1);
}
return "/jsps/result";
}


明天计划完成的事情:

集中力量理一下课程详情的接口

遇到的问题:

没遵守敏捷开发流程的后果,最后的任务量太大了

收获:

得了教训



返回列表 返回列表
评论

    分享到