托众导购网 淘宝客订单API获取订单代码
本文介绍如何使用淘宝客API获取淘宝客订单 ,获取到订单后 ,将订单记录插入到 OenJWeb的淘宝客订单表 ,下面 是代码 :
package org.openjweb.core.taobao.service.impl;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import org.apache.log4j.Logger;
import org.openjweb.core.entity.CommUser;
import org.openjweb.core.service.IDBSupportService;
import org.openjweb.core.service.ServiceLocator;
import org.springframework.security.context.SecurityContextHolder;
import org.openjweb.core.service.BaseMasterDetailService;
import org.openjweb.core.taobao.entity.TaobaoTbkOrder;
import org.openjweb.core.taobao.service.ITaobaoTbkOrderService;
import org.openjweb.core.util.StringUtil;
import com.taobao.api.ApiException;
import com.taobao.api.DefaultTaobaoClient;
import com.taobao.api.TaobaoClient;
import com.taobao.api.domain.TaobaokeReportMember;
import com.taobao.api.request.TaobaokeReportGetRequest;
import com.taobao.api.response.TaobaokeReportGetResponse;
public class TaobaoTbkOrderServiceImpl extends BaseMasterDetailService
implements ITaobaoTbkOrderService {
private static final Logger logger = Logger
.getLogger(TaobaoTbkOrderServiceImpl.class);
public void getTBKOrder(String url, String appkey, String secret,
String date, HttpServletRequest request)
throws Exception
{
url = ServiceLocator.getSysConfigService().getStringValueByParmName("tbkUrl");
appkey = ServiceLocator.getSysConfigService().getStringValueByParmName("tbkAppkey");
secret = ServiceLocator.getSysConfigService().getStringValueByParmName("tbkSecret");
TaobaoClient client = new DefaultTaobaoClient(url, appkey, secret);
TaobaokeReportGetRequest req = new TaobaokeReportGetRequest();
req.setFields("category_id,category_name,commission,commission_rate,item_num,item_title,num_iid,outer_code,pay_price,pay_time,real_pay_fee,seller_nick,shop_title,trade_id,trade_parent_id");
req.setDate(date);
logger.info("开始查询日期为:"+date+"的订单!");
req.setPageSize(100L); // 每页返回结果数,默认是40条.最大每页100
long pageNo = 1L;
TaobaokeReportGetResponse response = null;
IDBSupportService service = (IDBSupportService)ServiceLocator.getBean("IDBSupportService3");
while(true)
{
//req.setPageNo(pageNo); // 当前页数.只能获取1-499页数据.
response = client.execute(req);
if(response!=null)
{
List<TaobaokeReportMember> orders = response.getTaobaokeReport().getTaobaokeReportMembers();
if(orders==null||orders.size()==0)
{
logger.info("未找到订单,退出......");
break;
}
//if (orders != null && orders.size() > 0) {
for (int i = 0; i < orders.size(); i++)
{
TaobaokeReportMember order = orders.get(i);
//查询系统中是否已经有此订单商品,如果有,跳过,如果没有,则插入一条新记录
String proCode = String.valueOf(order.getNumIid());//商品ID
String orderId = String.valueOf(order.getTradeId());//交易号,即定单
int count = Integer.parseInt(service.findSingleValueByHql("select count(*) from TaobaoTbkOrder where orderNo='"+orderId+"' and proCode='"+proCode+"'").toString());
if(count>0)continue;//已经有则不插入
TaobaoTbkOrder orderEnt = new TaobaoTbkOrder();
orderEnt.setRowId(StringUtil.getUUID());
orderEnt.setCreateDt(StringUtil.getCurrentDateTime());
orderEnt.setUpdateDt(orderEnt.getCreateDt());
orderEnt.setCreateUid("admin");
orderEnt.setUpdateUid("admin");
orderEnt.setProCode(proCode);
orderEnt.setOrderNo(orderId);
logger.info("支付时间:"+order.getPayTime().toString());
String dt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss") .format(order.getPayTime());
orderEnt.setOrderDt(dt);//日期
orderEnt.setStoreName(order.getSellerNick());//卖家昵称
orderEnt.setStoreName2(order.getShopTitle());//店铺名称
orderEnt.setYongjinRate(order.getCommissionRate());// 佣金比率
orderEnt.setYongjinAmt(new Double(order.getCommission()));// 佣金金额
orderEnt.setPurQty(new Double(String.valueOf(order.getItemNum())));// 购买数量
orderEnt.setProName(order.getItemTitle());// 商品标题
orderEnt.setUnitPrice(new Double(order.getPayPrice()));// 成交价格
logger.info("实际成交额: ");
logger.info(order.getRealPayFee());
orderEnt.setOrderAmt(new Double(order.getRealPayFee()));//实际成交
//orderEnt.setOrderStatus(order.get)
//System.out.println(order.getCategoryId()); // 类目
//System.out.println(order.getCategoryName());// 类目名称
//System.out.println(order.getOuterCode());// 推广渠道
//System.out.println(order.getPayTime()); // 支付时间 Sat Dec 22
//System.out.println(order.getRealPayFee()); // 实际支付金额
//System.out.println(order.getTradeParentId());// 淘宝父交易号
service.saveOrUpdate(orderEnt);
}
pageNo++;
req.setPageNo(pageNo);
}
else
{
logger.info("淘宝客获取订单,响应为空.....");
throw new Exception ("淘宝客获取订单,响应为空.....");
//break; //如果未获得相应,退出()
}
}
}
}
本人最近已实现了一个淘宝导购网站 ,欢迎大家访问 http://www.tuozhong.com 注册 用户 ,此网站商品为淘宝商品 ,购物给集分宝,推荐会员购物后也可给集分宝。
托众导购网 淘宝客订单API获取订单代码相关推荐
- 外卖cps淘宝客订单API获取订单代码
直到看到了一个好友分享到外卖 CPS,觉得这是一个机会,不仅任何地方都可以做,而且门槛相对较低. 外卖cps淘宝客订单API获取订单代码 外卖cps带分销返利源码 源代码地址 http://www.m ...
- c#.net淘宝客基础api练手日记
下载地址: 最新淘宝客C#.NET基础API代码和SDK https://download.csdn.net/download/cplvfx/10643458 淘宝客基础api练手日记 第一步:SDK ...
- 淘宝客订单API获取订单代码
Trade 数据结构 名称 类型 是否隐私 描述 seller_nick String Y 卖家昵称 buyer_nick String Y 买家昵称 title String Y 商品标题 type ...
- 淘宝客的 API 接口 http://www.dahuariji.com/post/42.html
淘宝客API接口 接口信息 URL:http://m.showcoo.net/collection_tbk.htm 支持格式:json http请求方式:GET DEMO: 传递参数 名称 类型 ...
- 淘宝客之 API调用实例讲解
第一步 获取全部推广商品实体 需要使用类 ITopClient TOP客户端类 View Code 1 using Top.Api.Request; 2 3 namespace Top.Api 4 ...
- 淘宝订单API获取订单代码说明
点击免费测试 Trade 数据结构 名称 类型 是否隐私 描述 seller_nick String Y 卖家昵称 buyer_nick String Y 买家昵称 title String Y 商品 ...
- 淘宝天猫开放平台店铺商品发布(新)-淘宝店铺发布API接口流程代码对接说明
淘宝天猫开放平台店铺商品发布(新)-淘宝店铺发布API接口,天猫店铺发布API接口,oAuth2.0店铺发布接口,店铺商品API接口,店铺商品接口发布API接口流程代码对接说明: 公共参数 名称 类型 ...
- 淘宝开放平台API - 获取单笔交易的详细信息
淘宝开放平台(Taobao Open Platform)是基于淘宝各类电子商务业务的开放平台,提供外部合作伙伴参与服务淘宝用户的各类原材料,如业务API.账号体系.数据推送,奇门网关等.它是大淘宝电子 ...
- 淘宝商品详情API|获取宝贝SKU、主图、评价等API接口
很多电商系统,如返利系统.ERP.OMS软件等,需要通过商品API接口获取商品详情信息,来满足业务场景需要.具体包括:商品的标题.价格.SKU.主图.评价等维度信息. 重点优化了抓取速度.及抓取稳定性 ...
最新文章
- Python中线程Timeout的使用
- 面向自动驾驶领域的3D点云目标检测方法汇总!(单模态+多模态/数据+代码)
- 记录解决二次编码问题
- android 行布局选择器,『自定义View实战』—— 银行种类选择器
- js foreach 跳出循环_VUE.js
- 今日头条电脑版官方版_雷霆拯救电脑版-雷霆拯救pc版下载v4.0.9 官方版
- 力扣100. 相同的树(JavaScript)
- 只能发邮件不能接受_《GTA5》R星发邮件问候玩家会发生什么?以下操作一个也别碰...
- Chapter 4 Invitations——10
- jmeter如何看tps_jmeter性能测试疑难杂症解决思路
- 凯撒密码c语言实现代码,小写字母后移三位,大写字母前移二位,如abCD转换为DEab,其他字符默认不转换
- C++游戏编程教程(一)
- 【Ubuntu 休眠】设置合上笔记本盖子不休眠的方法
- 安装kafka+golang操作kafka
- linux安装jdk1.8
- matlab 直方图
- 关于laravel中如何在where中使用in这回事
- 最全的阿里面试经验(一)
- 艾克姆 蓝牙nRF52832上册-学习笔记
- ubuntu14.04编译ijkplayer备忘
热门文章
- 超实用的jQuery分页插件
- 数据库系统概论必背知识
- 安全之花如何盛开在华为云空间的每个角落?
- Python3.X subprocess、os.system/os.popen/os.spawn*、commands:与系统进行交互,如测试时常用的adb命令
- 设计模式之一——从魔兽争霸的兵种和技能看策略模式
- C#模态对话框和非模态对话框
- PTT否认CoinTiger被冤枉:贼喊捉贼!
- 企业自身发展变革数字化转型需求,为企业自身及各方带来价值
- JAVA毕设项目美容院管理系统(java+VUE+Mybatis+Maven+Mysql)
- 大连托福考试百家国际托福口语中的语音语调常见问题及案例分析