| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238 |
- <?php
- namespace addons\QiDingDong\console\controllers;
- use addons\QiDingDong\common\enums\QiDingDongEnums;
- use addons\QiDingDong\common\expand\sdk\qidingdong\src\model\BrandModel;
- use addons\QiDingDong\common\expand\sdk\qidingdong\src\model\ContentBaseModel;
- use addons\QiDingDong\common\expand\sdk\qidingdong\src\model\ContentModel;
- use addons\QiDingDong\common\expand\sdk\qidingdong\src\model\ContentValueModel;
- use addons\QiDingDong\common\expand\sdk\qidingdong\src\model\RefundUploadResourceModel;
- use addons\QiDingDong\common\expand\sdk\qidingdong\src\model\RegionModel;
- use addons\QiDingDong\common\expand\sdk\qidingdong\src\request\BrandRequest;
- use addons\QiDingDong\common\expand\sdk\qidingdong\src\request\RefundUploadResourceRequest;
- use addons\QiDingDong\common\expand\sdk\qidingdong\src\request\RegionRequest;
- use addons\QiDingDong\common\helper\AesHelper;
- use addons\QiDingDong\common\helper\RequestHelper;
- use addons\QiDingDong\common\helper\RsaHelper;
- use addons\QiDingDong\common\listeners\OrderPaidListener;
- use addons\QiDingDong\common\listeners\OrderRefundFinishListener;
- use addons\QiDingDong\common\listeners\OrderRefundListener;
- use addons\QiDingDong\common\models\QiDingDongEvent;
- use addons\QiDingDong\common\models\QiDingDongRegion;
- use common\enums\StatusEnum;
- use common\models\common\Region;
- use GuzzleHttp\Exception\GuzzleException;
- use yii\console\Controller;
- use yii\helpers\Json;
- class TestController extends Controller
- {
- public function actionReq()
- {
- try {
- var_dump(bcmul(bcmul(bcmul(8, 150, 2), 0.01, 2), 0.01, 2));
- $req = new BrandRequest([]);
- $cParams = new ContentModel();
- $time = intval(microtime(true) * 1000);
- $cParams->app_key = "2038633d-f9b6-c0e0-62b9-63c9afb58d61";
- $cParams->time = $time;
- $cParams->lock = "";
- $params = new BrandModel();
- $params->page_size = 20;
- $params->page = 1;
- $base = new ContentBaseModel();
- $base->equipment = "";
- $base->time = $time;
- $base->source = 99;
- $base->version = "v3.2.1";
- $base->token = "94FFFD91A670A91A0CB0998BBB2B5E5C";
- $content = new ContentValueModel();
- $content->data = $params;
- $content->base = $base;
- $json = Json::encode($content->toArray());
- var_dump($json);
- $encrypt = AesHelper::encrypt($json);
- RsaHelper::publicKey("/data/project/qimall/qdd_public.key");
- $cParams->lock = RsaHelper::publicEncrypt($encrypt[1]);
- $cParams->content = $encrypt[0];
- var_dump($cParams->toArray());
- $resp = $req->send($cParams);
- $res = $resp->toArray();
- var_dump($res);
- $lock = RsaHelper::publicDecrypt($res['lock']);
- $content = AesHelper::decrypt($res['content'], $lock);
- var_dump($lock);
- var_dump($content);
- } catch (\Exception $e) {
- var_dump(1, $e->getMessage(), $e->getFile(), $e->getLine());
- } catch (GuzzleException $e) {
- var_dump(2, $e->getMessage());
- }
- }
- public function actionOrder()
- {
- (new OrderPaidListener())->async_handle(['id' => 13025]);
- // (new OrderRefundListener())->async_handle(['id' => 441]);
- // (new OrderRefundFinishListener())->handleSync(['id' => 436]);
- }
- public function actionRegion()
- {
- $provinces = $this->region(0);
- $inserts = [];
- foreach ($provinces as $province) {
- $citys = $this->region($province['region_id']);
- $inserts[] = [
- 'name' => $province['region_name'],
- 'level' => 1,
- 'id' => $province['region_id'],
- 'province_id' => 0,
- 'province' => "",
- 'city_id' => 0,
- 'city' => "",
- 'region'=> $province['region_name'],
- 'created_at' => time(),
- 'updated_at' => time(),
- ];
- foreach ($citys as $city) {
- $districts = $this->region($city['region_id']);
- $inserts[] = [
- 'name' => $city['region_name'],
- 'level' => 2,
- 'id' => $city['region_id'],
- 'province_id' => $province['region_id'],
- 'province' => $province['region_name'],
- 'city_id' => 0,
- 'city' => "",
- 'region'=> "{$province['region_name']} {$city['region_name']}",
- 'created_at' => time(),
- 'updated_at' => time(),
- ];
- foreach ($districts as $district) {
- $inserts[] = [
- 'name' => $district['region_name'],
- 'level' => 3,
- 'id' => $district['region_id'],
- 'province_id' => $province['region_id'],
- 'province' => $province['region_name'],
- 'city_id' => $city['region_id'],
- 'city' => $city['region_name'],
- 'region'=> "{$province['region_name']} {$city['region_name']} {$district['region_name']}",
- 'created_at' => time(),
- 'updated_at' => time(),
- ];
- }
- }
- }
- $cnt = 10;
- $iArr = array_chunk($inserts, $cnt);
- foreach ($iArr as $item) {
- QiDingDongRegion::find()->createCommand()->batchInsert(QiDingDongRegion::tableName(), array_keys($item[0]), $item)->execute();
- }
- }
- protected function region(int $parent_id)
- {
- // 获取配送方式
- $mall_id = 1;
- $contentModel = RequestHelper::contentModelInstance($mall_id);
- $contentModel->content->data = new RegionModel();
- // $contentModel->content->data = new RegionAllModel();
- $contentModel->content->data->device = QiDingDongEnums::REQUEST_PARAMS_DEVICE;
- $contentModel->content->data->parent_id = $parent_id;
- return RequestHelper::send(new RegionRequest(), RequestHelper::enCrypto($contentModel, $mall_id), $mall_id);
- }
- public function actionMap()
- {
- $level = 3;
- /**
- * @var $item QiDingDongRegion
- */
- foreach (QiDingDongRegion::find()->where(['local_id' => StatusEnum::DISABLED])->andWhere(['level' => $level])->each() as $item) {
- // $parent = QiShangTongRegion::findOne(['id' => $item->city_id]);
- // $parent = QiDingDongRegion::findOne(['id' => $item->province_id]);
- // if (in_array($item->province_id, [132, 151, 2370])) {
- // $parent = Region::findOne(['name' => $parent->name, 'level' => $level]);
- if ($level == 3) {
- $parent = QiDingDongRegion::findOne(['id' => $item->city_id]);
- $region = Region::findOne(['name' => $item->name, 'level' => $level, 'parent_id' => $parent->local_id]); // , 'parent_id' => $parent->id
- }
- // }
- // var_dump($parent->local_name, $parent->local_id, $item->name, !empty($region) ? $region->toArray() : []);
- // break;
- if (!empty($region)) {
- var_dump("============$item->name");
- $item->local_id = $region->id;
- $item->local_name = $region->name;
- if ($level == 2 && !empty($parent)) {
- // 记录省级
- $item->local_province_id = $parent->local_id;
- $item->local_province = $parent->local_province;
- } elseif ($level == 3 && !empty($parent)) {
- // 记录省级
- $item->local_province_id = $parent->local_province_id;
- $item->local_city_id = $parent->local_id;
- $item->local_province = $parent->local_province;
- $item->local_city = $parent->local_city;
- }
- $item->save();
- } else {
- var_dump("······$item->name");
- }
- }
- }
- public function actionUp()
- {
- $mall_id = 1;
- $image = 'https://img.lanyipp.com//images/2023/11/30/image_1701317607_BuQVUdKu.jpg';
- $iInfo = getimagesize($image);
- $iContentModel = RequestHelper::contentModelInstance($mall_id);
- $iContentModel->content->data = new RefundUploadResourceModel();
- $iContentModel->content->data->file = "data:{$iInfo['mime']};base64,".base64_encode(file_get_contents($image));
- $iContentModel->content->data->resource_type = StatusEnum::ENABLED; // 图片
- $iRes = RequestHelper::send(new RefundUploadResourceRequest(), RequestHelper::enCrypto($iContentModel, $mall_id), $mall_id);
- /**
- * array(2) {
- ["object"]=>
- string(36) "2023/12/05/20231205113728650250.jpeg"
- ["url"]=>
- string(31) "http://csstatics.7dingdong.com/"
- }
- */
- }
- public function actionDe()
- {
- var_dump(123);
- /**
- * @var $each QiDingDongEvent
- */
- foreach (QiDingDongEvent::find()->where(['like', 'content', '[]'])->each() as $each) {
- var_dump($each->id);
- $each->content = RequestHelper::decrypt($each->post, 1);
- $each->mall_id = 1;
- $each->save();
- }
- }
- }
|