EleRetailConvertPrint.java 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. package com.ydd.app.service.impl;
  2. import com.ydd.common.utils.StringUtils;
  3. import com.ydd.third.common.utils.DateUtils;
  4. import com.ydd.third.print.request.PrintOrderActDto;
  5. import com.ydd.third.print.request.PrintOrderDto;
  6. import com.ydd.third.waimai.eleRetai.param.OrderGetDataResultDataDto;
  7. import com.ydd.third.waimai.eleRetai.param.OrderGetDiscount;
  8. import java.math.BigDecimal;
  9. import java.util.ArrayList;
  10. import java.util.Date;
  11. import java.util.List;
  12. public class EleRetailConvertPrint {
  13. public static PrintOrderDto convert(OrderGetDataResultDataDto ele){
  14. PrintOrderDto dto = new PrintOrderDto();
  15. dto.setDaySeq(String.valueOf(ele.getOrder().getOrder_index()));
  16. dto.setOrderSource("饿百零售");
  17. dto.setShopName(ele.getShop().getName());
  18. long createTime = Long.parseLong(ele.getOrder().getCreate_time()) * 1000L;
  19. dto.setCreateTime(DateUtils.format(new Date(createTime),DateUtils.DATE_TIME_PATTERN));
  20. dto.setIsBook(ele.getOrder().getSend_immediately()==2?1:0);
  21. long sendTime =ele.getOrder().getSend_time() * 1000L;
  22. String deliverTimeStr = DateUtils.format( new Date(sendTime),"MM月dd日 HH:mm")+"送达";
  23. dto.setDeliveryTime(dto.getIsBook()==1?deliverTimeStr:"");
  24. // dto.setDeliveryTime(dto.getIsBook()==1?DateUtils.format(new Date(sendTime),DateUtils.DATE_TIME_PATTERN):"");
  25. dto.setOutOrderId(ele.getOrder().getOrder_id());
  26. //优惠信息
  27. List<PrintOrderActDto> actDtos = new ArrayList<>();
  28. OrderGetDiscount[] array = ele.getDiscount();
  29. if(array!=null&&array.length>0){
  30. for(int i=0;i<array.length;i++){
  31. PrintOrderActDto actDto = new PrintOrderActDto();
  32. actDto.setAmount(new BigDecimal(array[i].getFee()).divide(new BigDecimal("100"))+"");
  33. actDto.setName(array[i].getDesc());
  34. actDto.setType(array[i].getType()+"");
  35. actDtos.add(actDto);
  36. }
  37. }
  38. actDtos = MeiTuanConvertPrint.merge(actDtos);
  39. dto.setActDtos(actDtos);
  40. dto.setDeliverFee(new BigDecimal(ele.getOrder().getSend_fee()).divide(new BigDecimal(100)).toString());
  41. dto.setOriginalPrice(new BigDecimal(ele.getOrder().getTotal_fee()).divide(new BigDecimal(100)));
  42. dto.setTotalPrice(new BigDecimal(ele.getOrder().getUser_fee()).divide(new BigDecimal(100)));
  43. String remark = "0".equals(ele.getOrder().getRemark()) ? "" : ele.getOrder().getRemark();
  44. String greeting ="";
  45. if(ele.getOrder().getExt()!=null){
  46. greeting = ele.getOrder().getExt().getGreeting();
  47. if(StringUtils.isNotBlank(greeting)){
  48. greeting ="[祝福语]"+greeting+" ";
  49. }
  50. }
  51. if(StringUtils.isNotBlank(greeting)){
  52. remark = greeting+remark;
  53. }
  54. dto.setCaution(remark);
  55. dto.setRecipientAddress(ele.getUser().getAddress());
  56. dto.setRecipientName(ele.getUser().getName());
  57. dto.setRecipientPhone(ele.getUser().getPhone());
  58. return dto;
  59. }
  60. }