发表于: 2018-01-09 23:03:55
1 545
今天完成的事情:
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";
}
明天计划完成的事情:
集中力量理一下课程详情的接口
遇到的问题:
没遵守敏捷开发流程的后果,最后的任务量太大了
收获:
得了教训
评论