shopId; $merchant = WxOpenClass::getMallWxInfo(); $ptStyle = dict::getDict('ptStyle', 'mall'); if (getenv('YII_ENV') != 'production') { if (!isset($_SERVER['HTTPS']) || $_SERVER['HTTPS'] != 'on') { util::success(['goodsUrl' => 'www.google.com', 'imgUrl' => 'www.google.com', 'itemUrl' => 'www.google.com']); } } $goodsShortUrl = 'wx_mini_goods_short_url' . $shopId; $itemShortUrl = 'wx_mini_item_short_url' . $shopId; $imageShortUrl = 'wx_mini_image_short_url' . $shopId; $goodsUrl = Yii::$app->redis->executeCommand('GET', [$goodsShortUrl]); $imgUrl = Yii::$app->redis->executeCommand('GET', [$itemShortUrl]); $itemUrl = Yii::$app->redis->executeCommand('GET', [$imageShortUrl]); if (empty($goodsUrl) || empty($imgUrl) || empty($itemUrl)) { $goods = miniUtil::generateShortLink($merchant, 'pages/home/category?account=' . $shopId, '', $ptStyle); $image = miniUtil::generateShortLink($merchant, 'pages/home/mall?account=' . $shopId, '', $ptStyle); $item = miniUtil::generateShortLink($merchant, 'pages/item/item?account=' . $shopId, '', $ptStyle); $goodsUrl = $goods['link'] ?? ''; $imgUrl = $image['link'] ?? ''; $itemUrl = $item['link'] ?? ''; Yii::$app->redis->executeCommand('SETEX', [$goodsShortUrl, 86400 * 3, $goodsUrl]); Yii::$app->redis->executeCommand('SETEX', [$itemShortUrl, 86400 * 3, $imgUrl]); Yii::$app->redis->executeCommand('SETEX', [$imageShortUrl, 86400 * 3, $itemUrl]); } util::success(['goodsUrl' => $goodsUrl, 'imgUrl' => $imgUrl, 'itemUrl' => $itemUrl]); } //main信息 ssh 20230406 public function actionInfo() { $main = $this->main; util::success(['info' => $main]); } //花束商城太阳 ssh 20210610 public function actionGetMallPoster() { $shop = $this->shop; $shopId = $this->shopId; $pfShopId = $shop->pfShopId ?? 0; $merchant = WxOpenClass::getMallWxInfo(); $goodsPage = 'pages/home/category'; $ptStyle = dict::getDict('ptStyle', 'mall'); $scene = 'a=' . $this->shopAdminId . '&s=' . $this->shopId; $goodsImgUrl = miniUtil::generateUnlimitedMiniCode($merchant, $goodsPage, $scene, $ptStyle); $prefix = imgUtil::getPrefix(); $titleBase64 = stringUtil::ossBase64('花束花篮'); if ($pfShopId > 0) { $goodsUrl = $prefix . 'shop/miniCodeBg.jpg?x-oss-process=image'; $goodsMiniCodeBase64 = stringUtil::ossBase64($goodsImgUrl); $goodsUrl .= '/watermark,image_' . $goodsMiniCodeBase64 . ',g_north,x_0,y_40'; $goodsUrl .= '/watermark,text_' . $titleBase64 . ',g_north,x_0,y_530,size_50'; } else { $goodsUrl = imgUtil::groupImg($goodsImgUrl); } if (getenv('YII_ENV') != 'production' && (!isset($_SERVER['HTTPS']) || $_SERVER['HTTPS'] != 'on')) { $goodsLink = 'www.google.com'; } else { $goodsShortUrl = 'wx_mini_goods_short_url' . $shopId; $goodsLink = Yii::$app->redis->executeCommand('GET', [$goodsShortUrl]); if (empty($goodsLink)) { $goods = miniUtil::generateShortLink($merchant, 'pages/home/category?account=' . $shopId, '', $ptStyle); $goodsLink = $goods['link'] ?? ''; Yii::$app->redis->executeCommand('SETEX', [$goodsShortUrl, 86400 * 3, $goodsLink]); } } $respond = [ 'goodsUrl' => $goodsUrl, 'goodsLink' => $goodsLink, ]; util::success($respond); } //相册太阳码 ssh public function actionGetAlbumPoster() { $shop = $this->shop; $shopId = $this->shopId; $pfShopId = $shop->pfShopId ?? 0; $merchant = WxOpenClass::getMallWxInfo(); $goodsPage = 'pages/home/mall'; $ptStyle = dict::getDict('ptStyle', 'mall'); $scene = 'a=' . $this->shopAdminId . '&s=' . $this->shopId; $goodsImgUrl = miniUtil::generateUnlimitedMiniCode($merchant, $goodsPage, $scene, $ptStyle); $prefix = imgUtil::getPrefix(); $titleBase64 = stringUtil::ossBase64('相册'); if ($pfShopId > 0) { $albumUrl = $prefix . 'shop/miniCodeBg.jpg?x-oss-process=image'; $goodsMiniCodeBase64 = stringUtil::ossBase64($goodsImgUrl); $albumUrl .= '/watermark,image_' . $goodsMiniCodeBase64 . ',g_north,x_0,y_40'; $albumUrl .= '/watermark,text_' . $titleBase64 . ',g_north,x_0,y_530,size_50'; } else { $albumUrl = imgUtil::groupImg($goodsImgUrl); } if (getenv('YII_ENV') != 'production' && (!isset($_SERVER['HTTPS']) || $_SERVER['HTTPS'] != 'on')) { $albumLink = 'www.google.com'; } else { $itemShortUrl = 'wx_mini_item_short_url' . $shopId; $albumLink = Yii::$app->redis->executeCommand('GET', [$itemShortUrl]); if (empty($albumLink)) { $image = miniUtil::generateShortLink($merchant, 'pages/home/mall?account=' . $shopId, '', $ptStyle); $albumLink = $image['link'] ?? ''; Yii::$app->redis->executeCommand('SETEX', [$itemShortUrl, 86400 * 3, $albumLink]); } } $respond = [ 'albumUrl' => $albumUrl, 'albumLink' => $albumLink, ]; util::success($respond); } //绿植花材的太阳码 ssh 20250925 public function actionGetItemPoster() { $shop = $this->shop; $shopId = $this->shopId; $pfShopId = $shop->pfShopId ?? 0; $merchant = WxOpenClass::getMallWxInfo(); $ptStyle = dict::getDict('ptStyle', 'mall'); $scene = 'a=' . $this->shopAdminId . '&s=' . $this->shopId; $flowerPage = 'pages/item/item'; $flowerImgUrl = miniUtil::generateUnlimitedMiniCode($merchant, $flowerPage, $scene, $ptStyle); $prefix = imgUtil::getPrefix(); $titleBase64 = stringUtil::ossBase64('绿植花材'); if ($pfShopId > 0) { $flowerUrl = $prefix . 'shop/miniCodeBg.jpg?x-oss-process=image'; $flowerMiniCodeBase64 = stringUtil::ossBase64($flowerImgUrl); $flowerUrl .= '/watermark,image_' . $flowerMiniCodeBase64 . ',g_north,x_0,y_40'; $flowerUrl .= '/watermark,text_' . $titleBase64 . ',g_north,x_0,y_530,size_50'; } else { $flowerUrl = imgUtil::groupImg($flowerImgUrl); } if (getenv('YII_ENV') != 'production' && (!isset($_SERVER['HTTPS']) || $_SERVER['HTTPS'] != 'on')) { $flowerLink = 'www.google.com'; } else { $imageShortUrl = 'wx_mini_image_short_url' . $shopId; $flowerLink = Yii::$app->redis->executeCommand('GET', [$imageShortUrl]); if (empty($flowerLink)) { $item = miniUtil::generateShortLink($merchant, 'pages/item/item?account=' . $shopId, '', $ptStyle); $flowerLink = $item['link'] ?? ''; Yii::$app->redis->executeCommand('SETEX', [$imageShortUrl, 86400 * 3, $flowerLink]); } } $respond = [ 'flowerUrl' => $flowerUrl, 'flowerLink' => $flowerLink, ]; util::success($respond); } //会员注册码 ssh 20220607 public function actionGetMemberPoster() { $merchant = WxOpenClass::getMallWxInfo(); $page = 'pages/login/index'; $ptStyle = dict::getDict('ptStyle', 'mall'); $scene = 'a=' . $this->shopAdminId . '&s=' . $this->shopId; $imgUrl = miniUtil::generateUnlimitedMiniCode($merchant, $page, $scene, $ptStyle); $prefix = imgUtil::getPrefix(); $titleBase64 = stringUtil::ossBase64('扫码注册'); $memberUrl = $prefix . 'shop/miniCodeBg.jpg?x-oss-process=image'; $memberMiniCodeBase64 = stringUtil::ossBase64($imgUrl); $memberUrl .= '/watermark,image_' . $memberMiniCodeBase64 . ',g_north,x_0,y_40'; $memberUrl .= '/watermark,text_' . $titleBase64 . ',g_north,x_0,y_530,size_50'; $respond = ['imgUrl' => $memberUrl]; util::success($respond); } public function actionDemo() { return $this->renderPartial('demo'); } //新客户 ssh 2019.12.29 public function actionVisit() { $data = json_encode(array( 'type' => 'msg', 'msg' => 'aaaa', )); $id = 'merchantConsole_' . $this->sjId; $online = Gateway::getClientIdByUid($id); if ($online) { //直接发送 Gateway::sendToUid($id, json_encode($data)); } else { //保存 } } //新订单 ssh 2019.12.29 public function actionOrder() { $data = json_encode(array( 'type' => 'msg', 'msg' => 'aaaa', )); $id = 'merchantConsole_' . $this->sjId; $online = Gateway::getClientIdByUid($id); if ($online) { //直接发送 Gateway::sendToUid($id, json_encode($data)); } else { //保存 } } //我的 ssh 2021.4.8 public function actionMy() { $lookMoney = \bizGhs\shop\classes\ShopAdminClass::lookMoneyPower($this->shopAdmin, $this->shop); $shop = $this->shop; $shopId = $this->shopId; $ext = ShopExtClass::getByCondition(['shopId' => $shopId], true); $main = $this->main; $mainId = $main->id ?? 0; $balance = $main->balance ?? 0.00; $money = $main->money ?? 0; $txBalance = $main->txBalance ?? 0.00; $sj = isset($this->sj) && !empty($this->sj) ? $this->sj->attributes : []; $shopImg = Yii::$app->params['hdImgHost'] . 'retail/default-img.png'; if (isset($shop->avatar) && !empty($shop->avatar)) { $shopImg = Yii::$app->params['ghsImgHost'] . $shop->avatar; } $deadline = $sj['deadline'] ?? ''; $relation = isset($this->shopAdmin) && !empty($this->shopAdmin) ? $this->shopAdmin->attributes : []; $adminName = $relation['name'] ?? ''; $eId = $relation['id'] ?? 0; $mobile = $relation['mobile'] ?? ''; $sjName = $sj['name'] ?? ''; $shopName = $shop->shopName ?? ''; $cashAccount = $main->cashAccount ?? ''; $data = [ 'balance' => $balance, 'txBalance' => $txBalance, 'shopImg' => $shopImg, 'deadline' => $deadline, 'adminName' => $adminName, 'adminMobile' => $mobile, 'sjName' => $sjName, 'shopName' => $shopName, 'cashAccount' => $cashAccount, 'shopAdminId' => $eId, 'shopId' => $this->shopId, 'sjId' => $this->sjId, 'shopInfo' => $shop, 'shopExt' => $ext, 'money' => $money, 'mainId' => $mainId, 'lookMoney' => $lookMoney, ]; util::success($data); } //经营概况 ssh 2021.1.27 public function actionProfile() { //余额 $shopInfo = ShopClass::getById($this->shopId); //库存情况 $stockInfo = ProductClass::getProductStockByShopId($this->sjId, $this->shopId); //今日销售金额 $today = StatIncomeClass::getAmountToday($this->shopId); //近七天销售金额 $latestSeven = StatIncomeClass::getAmountWeek($this->shopId); //30天销售金额 $latestThirty = StatIncomeClass::getAmountThirty($this->shopId); $base = [ 'balance' => $shopInfo['balance'], 'mayGathering' => $shopInfo['mayGathering'] ?? 0.00, 'mayPay' => $shopInfo['mayPay'] ?? 0.00, 'stockCost' => $stockInfo['stockCost'], 'stockNum' => 0, 'stockBigNum' => $stockInfo['stockBigNum'], 'stockSmallNum' => $stockInfo['stockSmallNum'], 'stockWarning' => $stockInfo['stockWarning'], 'today' => $today, 'todayCompareYesterday' => 0, 'latestSeven' => $latestSeven, 'latestSevenSameTerm' => 0, 'latestThirty' => $latestThirty, 'latestThirtySameTerm' => 0, ]; //今日订单数 $saleNum = StatOrderClass::getRiseNumToday($this->shopId); //今日销售金额 $saleAmount = $today; //昨日订单数 $ySaleNum = StatOrderClass::getRiseNumYesterday($this->shopId); //昨日销售金额 $ySaleAmount = StatIncomeClass::getAmountYesterday($this->shopId); //7天订单数 $sevenSaleNum = StatOrderClass::getRiseNumWeek($this->shopId); //7天销售金额 $sevenSaleAmount = $latestSeven; //30天订单数 $thirtySaleNum = StatOrderClass::getRiseNumThirty($this->shopId); //30天销售金额 $thirtySaleAmount = $latestThirty; //今日采购 $todayCg = StatCgClass::getTodayCg($this->shop); //昨日采购 $yesCg = StatCgClass::getYesterdayCg($this->shop); //7日采购 $sevenCg = StatCgClass::getSevenCg($this->shop); //30日采购 $thirtyCg = StatCgClass::getThirtyCg($this->shop); $more = [ 'today' => [ 'income' => 0, 'expend' => 0, 'saleNum' => $saleNum, 'saleAmount' => $saleAmount, 'purchaseNum' => $todayCg['num'] ?? 0, 'purchaseAmount' => $todayCg['amount'] ?? 0.00, ], 'yesterday' => [ 'income' => 0, 'expend' => 0, 'saleNum' => $ySaleNum, 'saleAmount' => $ySaleAmount, 'purchaseNum' => $yesCg['num'] ?? 0, 'purchaseAmount' => $yesCg['amount'] ?? 0.00, ], 'latestSeven' => [ 'income' => 0, 'expend' => 0, 'saleNum' => $sevenSaleNum, 'saleAmount' => $sevenSaleAmount, 'purchaseNum' => $sevenCg['num'] ?? 0, 'purchaseAmount' => $sevenCg['amount'] ?? 0.00, ], 'latestThirty' => [ 'income' => 0, 'expend' => 0, 'saleNum' => $thirtySaleNum, 'saleAmount' => $thirtySaleAmount, 'purchaseNum' => $thirtyCg['num'] ?? 0, 'purchaseAmount' => $thirtyCg['amount'] ?? 0.00, ], ]; util::success(['base' => $base, 'more' => $more]); } // 查询小程序的同城配送的微信门店编号 public function actionWxStoreId() { $main = MainClass::getById($this->mainId, true, 'id, wxStoreId'); util::success(['wx' => $main]); } }