'OP00000003', 'serial_no' => '00dfba8194c41b84cf', 'merchant_no' => '8221210594300JY', 'term_no' => 'A0073841', 'merchantPrivateKeyPath' => $merchantPrivateKeyPath, 'lklCertificatePath' => $lklCertificatePath, ]; $lakala = new Lakala($params); $outTradeNo = orderSn::getPurchaseSn(); $price = 0.1; $response = $lakala->driveWxPay($outTradeNo, $price); if ($response && isset($response['cmdRetCode']) && $response['cmdRetCode'] == 'GLOBAL_SUCCESS') { echo '
';
            echo '下单成功';
            print_r($response);
        } else {
            echo '
';
            echo '下单失败';
            print_r($response);
        }
    }


    public function actionIndex()
    {
        //header('Content-type:image/png');
        $productId = 1;
        $barcode = barcodeUtil::barcodeGeneratorPNG($productId);
        oss::uploadContent("ghs/barcode/" . $productId . '.png', $barcode);
        $barcode = base64_encode($barcode);
        echo ' ';
//        $merchantExtend = WxOpenClass::getGhsWxInfo();
//       // $res = baiduAip::transfer("你好");
//        dd($merchantExtend);
    }

    //dada 城市code
    public function actionDadaCityCode()
    {
        $res = dada::getCityCode(0);
        util::success($res);
    }

    //理由
    public function actionDadaReasons()
    {
        $res = dada::getCancelReason(0);
        util::success($res);
    }

    //达达 :下单
    public function actionDadaAddOrder()
    {
        $orderSn = 'XSD_CS26316851';
        $orderInfo = OrderClass::getByOrderSn($orderSn);
        $res = DadaExpressServices::addOrder($orderInfo);
        util::success($res);
    }

    //重发快递
    public function actionDadaReAdd()
    {
        $orderSn = 'XSD_CS26316851';
        $orderInfo = OrderClass::getByOrderSn($orderSn);
        $res = DadaExpressServices::reAddOrder($orderInfo);
        util::success($res);
    }

    //达达状态查询
    public function actionDadaOrderStatus()
    {
        $orderSn = 'XSD_CS26316851';
        $res = DadaExpressServices::statusOrder($orderSn);
        util::success($res);
    }

    //达达取消下单
    public function actionDadaCancelOrder()
    {
        $orderSn = 'XSD_CS26316851';
        $res = DadaExpressServices::cancelOrder($orderSn, 1);
        util::success($res);
    }

    //获取已支持的配送公司列表接口
    public function actionGetAllDelivery()
    {
        $data = MiniExpressService::getAllImmeDelivery();
        util::success($data);
    }

    //即时配送
    /*
     * Array
(
    [resultcode] => 0
    [resultmsg] => OK
    [shop_list] => Array
        (
            [0] => Array
                (
                    [shopid] => 1588714266
                    [delivery_id] => SFTC
                    [audit_result] => 0
                    [create_time] => 1612172838
                    [remark] =>
                    [delivery_name] => 顺丰同城急送
                )

        )
)
     */
    public function actionGetBindAccount()
    {
        $merchant = WxOpenClass::getGhsWxInfo();
        $isOpen = 2;
        $r = miniUtil::getBindAccount($merchant, $isOpen);
        dd($r);
    }


    //下单 (沙箱)

    /**
     * Array
     * (
     * [resultcode] => 0
     * [resultmsg] => ok
     * [fee] => 10
     * [waybill_id] => test_shop_id1612365974_waybillid
     * [order_status] => 101
     * [dispatch_duration] => 300
     * )
     */
    public function actionCreateWaybill()
    {
        $merchant = WxOpenClass::getGhsWxInfo();
        $isOpen = 2;
        $shopId = 'test_shop_id';
        $shopOrderId = 'test_shop_id' . time();
        $appSecret = 'test_app_secrect';
        $data = [
            'shopid' => $shopId,
            'shop_order_id' => $shopOrderId,
            'shop_no' => '1',
            'delivery_sign' => miniUtil::getDeliverySign($shopId, $shopOrderId, $appSecret), //,则delivery_sign=SHA1(shopid + shop_order_id + AppSecret)
            'delivery_id' => "TEST",
            'openid' => 'oGKMp45YLxewOTWEbpMFzWoVqdW0',
            'sender' => [
                'name' => 'test',
                'city' => '厦门市',
                'address' => '思明区',
                'address_detail' => '软件园二期',
                'phone' => '19959271111',
                'lng' => 118.134343,
                'lat' => 24.483566,
                'coordinate_type' => 0,
            ],
            'receiver' => [
                'name' => 'test',
                'city' => '厦门市',
                'address' => '思明区',
                'address_detail' => '软件园二期',
                'phone' => '19959271111',
                'lng' => 118.134343,
                'lat' => 24.493566,
                'coordinate_type' => 0,
            ],
            'cargo' => [
                'goods_value' => 1,
                'goods_weight' => 0.1,
                'cargo_first_class' => '鲜花',
                'cargo_second_class' => '鲜花',
            ],
            'order_info' => [
                'order_type' => 0,
            ],
            'shop' => [
                'wxa_path' => '/shop',
                'img_url' => 'http://www.baidu.com/test.png',
                'goods_name' => 'test',
                'goods_count' => 1,
            ],

        ];

        $r = miniUtil::addOrder($data, $merchant, $isOpen);
        dd($r);

    }

    //获取运单数据

    /**
     * Array
     * (
     * [resultcode] => 0
     * [resultmsg] => ok
     * [order_status] => 101
     * [agent_info] => Array
     * (
     * )
     *
     * [waybill_id] => test_shop_id1612365974_waybillid
     * [rider_name] =>
     * [rider_phone] =>
     * [order_token] => NsXweKCKhSyAEIhAdnX3TYZsVDES0-t-tymHDONG0MpRsF31dQvVxiP_JJvLFaKS-kwXuOG3D0hzKkl7o-gzew
     * )
     */
    public function actionGetOrder()
    {
        $shopId = 'test_shop_id';
        $shopOrderId = 'test_shop_id1612365974';
        $appSecret = 'test_app_secrect';
        $merchant = WxOpenClass::getGhsWxInfo();
        $isOpen = 2;
        $data = [
            'shopid' => $shopId,
            'shop_order_id' => $shopOrderId,
            'shop_no' => '1',
            'delivery_sign' => MiniExpressService::getDeliverySign($shopId, $shopOrderId, $appSecret),
        ];
        $r = miniUtil::getOrder($data, $merchant, $isOpen);
        dd($r);
    }


    //沙盒 更新快递状态
    public function actionMockUpdateOrder()
    {
        $merchant = WxOpenClass::getGhsWxInfo();
        $isOpen = 2;
        /**
         * {
         * "shopid": "test_shop_id",
         * "shop_order_id": "xxxxxxxxxxx",
         * "waybill_id": "xxxxxxxxxxxxx",
         * "action_time": 12345678,
         * "order_status": 101,
         * "action_msg": "",
         * }
         */
        $shopId = 'test_shop_id';
        $shopOrderId = 'test_shop_id1612365974';
        $data = [
            'shop_order_id' => $shopOrderId,
            "shopid" => $shopId,
            "action_time" => time(),
            "order_status" => 302,
            'action_msg' => '状态变更',
        ];
        $r = miniUtil::mockUpdateOrder($data, $merchant, $isOpen);
        dd($r);
    }

    public function actionTest()
    {


    }


    //新增订单
    public function actionAddOrder()
    {
        $dada = Yii::getAlias("@vendor/dada/");
        require_once $dada . 'api/addOrderApi.php';
        require_once $dada . 'client/dadaRequestClient.php';
        require_once $dada . 'client/dadaResponse.php';
        require_once $dada . 'config/config.php';
        require_once $dada . 'model/orderModel.php';

        // isOnline 判断是否是测试环境,会有不同的域名等
        $isOnline = false;
        $sourceId = 1000000;
        // 初始化一个config
        $config = new \Config($sourceId, $isOnline);

        $orderModel = new \OrderModel();
        $orderModel->setShopNo('11047059');
        $orderModel->setOriginId('2018091100000002');
        $orderModel->setCityCode('021');
        $orderModel->setCargoPrice(10);
        $orderModel->setIsPrepay(0);
        $orderModel->setReceiverName('测试达达');
        $orderModel->setReceiverAddress('上海市崇明岛');
        $orderModel->setReceiverLat(31.63);
        $orderModel->setReceiverLng(121.41);
        $orderModel->setReceiverPhone('18588888888');
        $orderModel->setCallback('http://api.b.huaml.com/data/request');

        // api主要有2个参数,一个是url, 一个是业务参数
        $addOrderApi = new \AddOrderApi(json_encode($orderModel));

        $dada_client = new \DadaRequestClient($config, $addOrderApi);
        $resp = $dada_client->makeRequest();
        echo json_encode($resp);
    }

    //订单详情查询
    public function actionOrderQuery()
    {
        $dada = Yii::getAlias("@vendor/dada/");
        require_once $dada . 'api/OrderQueryApi.php';
        require_once $dada . 'client/dadaRequestClient.php';
        require_once $dada . 'client/dadaResponse.php';
        require_once $dada . 'config/config.php';
        require_once $dada . 'model/orderModel.php';

        // isOnline 判断是否是测试环境,会有不同的域名等
        $isOnline = false;
        $sourceId = 1000000;
        // 初始化一个config
        $config = new \Config($sourceId, $isOnline);

        $orderModel = new \OrderModel();
        $orderModel->setOrderId('2018091100000002');

        // api主要有2个参数,一个是url, 一个是业务参数
        $addOrderApi = new \OrderQueryApi(json_encode($orderModel));

        $dada_client = new \DadaRequestClient($config, $addOrderApi);
        $resp = $dada_client->makeRequest();
        echo json_encode($resp);
    }

    public function actionFocus()
    {
        $name = '花卉宝';
        if (getenv('YII_ENV') == 'dev') {
            $name = '花美灵';
        }
        $merchant = MerchantService::getByCondition(['name' => $name]);
        $list = wxUtil::getSubscribeUserList($merchant);
        dd($list);
    }

    //宝贝售出提醒 ssh 2020.1.30
    public function actionInform()
    {
        $merchant = MerchantService::getMerchantById(12362);
        $order = OrderService::getById(214810);
        InformAdminClass::sendComplete($order);
    }

    public function actionNotice()
    {
        $data = ['messageType' => 'inform', 'informWay' => 'wx', 'userType' => 'admin', 'id' => 6, 'mobile' => '15280215347'];
        $producer = Yii::$app->rabbitmq->getProducer('informProducer');
        echo '
';
        print_r($data);
        $msg = serialize($data);
        $r = $producer->publish($msg, 'informExchange', 'informRoute');
    }

}