| | |
| | | package com.yeshi.fanli.util.elme;
|
| | |
|
| | | import java.io.InputStream;
|
| | | import java.math.BigDecimal;
|
| | | import java.util.ArrayList;
|
| | | import java.util.Date;
|
| | | import java.util.List;
|
| | |
|
| | | import com.yeshi.fanli.entity.elme.ElmeOrder;
|
| | | import com.yeshi.fanli.util.MoneyBigDecimalUtil;
|
| | | import com.yeshi.fanli.util.TimeUtil;
|
| | |
|
| | | import jxl.Sheet;
|
| | | import jxl.Workbook;
|
| | |
|
| | | public class ElmeOrderUtil {
|
| | |
|
| | | /**
|
| | | * 解析订单(从输入流)
|
| | | * |
| | | * @param input
|
| | | * @return
|
| | | */
|
| | | public static List<ElmeOrder> parseOrder(InputStream input) {
|
| | | List<ElmeOrder> list = new ArrayList<>();
|
| | | try {
|
| | | jxl.Workbook rwb = Workbook.getWorkbook(input);
|
| | | Sheet sheet = rwb.getSheet(0);
|
| | | for (int r = 1; r < sheet.getRows(); r++) {
|
| | | ElmeOrder order = new ElmeOrder();
|
| | | for (int c = 0; c < sheet.getColumns(); c++) {
|
| | | String content = sheet.getCell(c, r).getContents();
|
| | | String columnName = sheet.getCell(c, 0).getContents().trim();
|
| | | switch (columnName) {
|
| | | case "渠道号":
|
| | | order.setChannelId(content);
|
| | | break;
|
| | | case "渠道名称":
|
| | | order.setChannelName(content);
|
| | | break;
|
| | | case "track_pid":
|
| | | order.setTrackPid(content);
|
| | | break;
|
| | | case "rid":
|
| | | order.setRid(content);
|
| | | break;
|
| | | case "订单日期":
|
| | | order.setOrderDate(new Date(TimeUtil.convertToTimeTemp(content, "yyyy-MM-dd")));
|
| | | break;
|
| | | case "订单号":
|
| | | order.setOrderId(content.replace("<", "").replace(">", ""));
|
| | | break;
|
| | | case "支付金额":
|
| | | order.setPayMoney(new BigDecimal(content));
|
| | | break;
|
| | | case "下单城市":
|
| | | order.setCity(content);
|
| | | break;
|
| | | case "用券金额":
|
| | | order.setCouponMoney(new BigDecimal(content));
|
| | | break;
|
| | | case "是否新客首单":
|
| | | order.setNewerFirstOrder(Integer.parseInt(content));
|
| | | break;
|
| | | case "是否新客复购单":
|
| | | order.setNewerRepayOrder(Integer.parseInt(content));
|
| | | break;
|
| | | case "是否使用淘客红包":
|
| | | order.setTaokeHongBao(Integer.parseInt(content));
|
| | | break;
|
| | | case "是否有在会场内该门店的点击记录":
|
| | | order.setShopClick(Integer.parseInt(content));
|
| | | break;
|
| | | case "是否领券后7天内首单":
|
| | | order.setRecieveCoupon7DayFirstOrder(Integer.parseInt(content));
|
| | | break;
|
| | | case "是否6结佣":
|
| | | if ("是".equalsIgnoreCase(content))
|
| | | order.setIsSettle(true);
|
| | | else
|
| | | order.setIsSettle(false);
|
| | | break;
|
| | | }
|
| | | }
|
| | | list.add(order);
|
| | | }
|
| | | rwb.close();
|
| | | } catch (Exception e) {
|
| | | }
|
| | | return list;
|
| | | }
|
| | |
|
| | | public static BigDecimal getCommission(BigDecimal payMoney) {
|
| | | return MoneyBigDecimalUtil.mul(payMoney, new BigDecimal("0.06"));
|
| | | }
|
| | |
|
| | | }
|
| | | package com.yeshi.fanli.util.elme; |
| | | |
| | | import java.math.BigDecimal; |
| | | |
| | | import org.yeshi.utils.MoneyBigDecimalUtil; |
| | | |
| | | public class ElmeOrderUtil { |
| | | public static BigDecimal getCommission(BigDecimal payMoney) { |
| | | return MoneyBigDecimalUtil.mul(payMoney, new BigDecimal("0.06")); |
| | | } |
| | | |
| | | } |