// Path: xbin-store-cloud-service-order-api/src/main/java/cn/binux/order/service/hystrix/OrderServiceHystrix.java
// @Component
// public class OrderServiceHystrix implements OrderService {
// 
// 
//     /**
//      * 提交订单
//      *
//      * @param userCookieValue 用户登录Cookie
//      * @param cartCookieValue 购物车Cookie
//      * @param addrId          用户地址id
//      * @param noAnnoyance     运费险
//      * @param paymentType     支付方式 1、货到付款，2、在线支付，3、微信支付，4、支付宝支付
//      * @param orderId
//      * @param shippingName    快递名称 固定顺丰速运  @return
//      */
//     @Override
//     public XbinResult generateOrder(String userCookieValue, String cartCookieValue, Integer addrId, Integer noAnnoyance, Integer paymentType, String orderId, String shippingName) {
//         return null;
//     }
// }
// 
// Path: xbin-store-cloud-common/src/main/java/cn/binux/pojo/XbinResult.java
// public class XbinResult {
// 
//     // 响应业务状态
//     private Integer status;
// 
//     // 响应消息
//     private String msg;
// 
//     // 响应中的数据
//     private Object data;
// 
//     public static XbinResult build(Integer status, String msg, Object data) {
//         return new XbinResult(status, msg, data);
//     }
// 
//     public static XbinResult ok(Object data) {
//         return new XbinResult(data);
//     }
// 
//     public static XbinResult ok() {
//         return new XbinResult(null);
//     }
// 
//     public XbinResult() {
// 
//     }
// 
//     public static XbinResult build(Integer status, String msg) {
//         return new XbinResult(status, msg, null);
//     }
// 
//     public XbinResult(Integer status, String msg, Object data) {
//         this.status = status;
//         this.msg = msg;
//         this.data = data;
//     }
// 
//     public XbinResult(Object data) {
//         this.status = 200;
//         this.msg = "OK";
//         this.data = data;
//     }
// 
//     public Boolean isOK() {
//         return this.status == 200;
//     }
// 
//     public Integer getStatus() {
//         return status;
//     }
// 
//     public void setStatus(Integer status) {
//         this.status = status;
//     }
// 
//     public String getMsg() {
//         return msg;
//     }
// 
//     public void setMsg(String msg) {
//         this.msg = msg;
//     }
// 
//     public Object getData() {
//         return data;
//     }
// 
//     public void setData(Object data) {
//         this.data = data;
//     }
// 
// 
// 
// }


import cn.binux.order.service.hystrix.OrderServiceHystrix;
import cn.binux.pojo.XbinResult;
import org.springframework.cloud.netflix.feign.FeignClient;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
package cn.binux.order.service;



/**
 * @author xubin.
 * @create 2017-02-28 下午9:04
 */

@FeignClient(value = "xbin-store-cloud-service-order",fallback = OrderServiceHystrix.class)
public interface OrderService {
    /**
     * 提交订单
     *
     * @param userCookieValue   用户登录Cookie
     * @param cartCookieValue   购物车Cookie
     * @param addrId            用户地址id
     * @param noAnnoyance       运费险
     * @param paymentType       支付方式 1、货到付款，2、在线支付，3、微信支付，4、支付宝支付
     * @param shippingName      快递名称 固定顺丰速运
     * @return
     */
    @RequestMapping(value = "/generateOrder",method = RequestMethod.POST)
// Path: xbin-store-cloud-service-order-api/src/main/java/cn/binux/order/service/hystrix/OrderServiceHystrix.java
// @Component
// public class OrderServiceHystrix implements OrderService {
// 
// 
//     /**
//      * 提交订单
//      *
//      * @param userCookieValue 用户登录Cookie
//      * @param cartCookieValue 购物车Cookie
//      * @param addrId          用户地址id
//      * @param noAnnoyance     运费险
//      * @param paymentType     支付方式 1、货到付款，2、在线支付，3、微信支付，4、支付宝支付
//      * @param orderId
//      * @param shippingName    快递名称 固定顺丰速运  @return
//      */
//     @Override
//     public XbinResult generateOrder(String userCookieValue, String cartCookieValue, Integer addrId, Integer noAnnoyance, Integer paymentType, String orderId, String shippingName) {
//         return null;
//     }
// }
// 
// Path: xbin-store-cloud-common/src/main/java/cn/binux/pojo/XbinResult.java
// public class XbinResult {
// 
//     // 响应业务状态
//     private Integer status;
// 
//     // 响应消息
//     private String msg;
// 
//     // 响应中的数据
//     private Object data;
// 
//     public static XbinResult build(Integer status, String msg, Object data) {
//         return new XbinResult(status, msg, data);
//     }
// 
//     public static XbinResult ok(Object data) {
//         return new XbinResult(data);
//     }
// 
//     public static XbinResult ok() {
//         return new XbinResult(null);
//     }
// 
//     public XbinResult() {
// 
//     }
// 
//     public static XbinResult build(Integer status, String msg) {
//         return new XbinResult(status, msg, null);
//     }
// 
//     public XbinResult(Integer status, String msg, Object data) {
//         this.status = status;
//         this.msg = msg;
//         this.data = data;
//     }
// 
//     public XbinResult(Object data) {
//         this.status = 200;
//         this.msg = "OK";
//         this.data = data;
//     }
// 
//     public Boolean isOK() {
//         return this.status == 200;
//     }
// 
//     public Integer getStatus() {
//         return status;
//     }
// 
//     public void setStatus(Integer status) {
//         this.status = status;
//     }
// 
//     public String getMsg() {
//         return msg;
//     }
// 
//     public void setMsg(String msg) {
//         this.msg = msg;
//     }
// 
//     public Object getData() {
//         return data;
//     }
// 
//     public void setData(Object data) {
//         this.data = data;
//     }
// 
// 
// 
// }


// Path: xbin-store-cloud-service-order-api/src/main/java/cn/binux/order/service/OrderService.java
import cn.binux.order.service.hystrix.OrderServiceHystrix;
import cn.binux.pojo.XbinResult;
import org.springframework.cloud.netflix.feign.FeignClient;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;

package cn.binux.order.service;



/**
 * @author xubin.
 * @create 2017-02-28 下午9:04
 */

@FeignClient(value = "xbin-store-cloud-service-order",fallback = OrderServiceHystrix.class)
public interface OrderService {
    /**
     * 提交订单
     *
     * @param userCookieValue   用户登录Cookie
     * @param cartCookieValue   购物车Cookie
     * @param addrId            用户地址id
     * @param noAnnoyance       运费险
     * @param paymentType       支付方式 1、货到付款，2、在线支付，3、微信支付，4、支付宝支付
     * @param shippingName      快递名称 固定顺丰速运
     * @return
     */
    @RequestMapping(value = "/generateOrder",method = RequestMethod.POST)
    XbinResult generateOrder(