| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267 |
- <?php
- namespace pt\controllers;
- use biz\sj\services\MerchantExtendService;
- use biz\sj\services\MerchantService;
- use bizGhs\custom\classes\CustomClass;
- use bizGhs\order\classes\OrderClass;
- use bizGhs\shop\classes\ShopAdminClass;
- use bizGhs\shop\classes\ShopClass;
- use bizHd\message\services\InformAdminService;
- use bizHd\order\services\OrderService;
- use bizHd\saas\classes\ApplyClass;
- use bizHd\user\services\UserService;
- use bizHd\wx\classes\WxOpenClass;
- use bizHd\wx\services\WxOpenService;
- use common\components\dateUtil;
- use common\components\dict;
- use common\components\mapUtil;
- use Overtrue\Pinyin\Pinyin;
- use Yii;
- use common\components\wxUtil;
- use common\components\miniUtil;
- use bizHd\order\classes\OrderClass as HdOrderClass;
- class TestController extends PublicController
- {
- //收入
- public function actionIncome()
- {
- echo "<pre>";
- $searchTime = 'thisMonth';
- $startTime = $get['startTime'] ?? '';
- $endTime = $get['endTime'] ?? '';
- $period = dateUtil::formatTime($searchTime, $startTime, $endTime, true);
- $start = $period['startTime'];
- $end = $period['endTime'];
- $currentStartDate = date('Y-m-d', strtotime($start));
- $currentEndDate = date('Y-m-d', strtotime($end));
- $currentStartTime = $currentStartDate . ' 00:00:00';
- $currentEndTime = $currentEndDate . ' 23:59:59';
- $shopId = 763;
- //$shopId = 4892;
- $shop = ShopClass::getById($shopId, true);
- $mainId = $shop->mainId ?? 0;
- $incomeList = [];
- $an = 0;
- //零售开单
- $hdWhere = ['mainId' => $mainId, 'status' => ['in', [HdOrderClass::ORDER_STATUS_UN_SEND, HdOrderClass::ORDER_STATUS_SENDING, HdOrderClass::ORDER_STATUS_COMPLETE]]];
- $hdWhere['payTime'] = ['between', [$currentStartTime, $currentEndTime]];
- $hdOrderList = HdOrderClass::getAllByCondition($hdWhere, null, '*');
- foreach ($hdOrderList as $hdKey => $hdOrder) {
- $payWay = $hdOrder['payWay'] ?? 0;
- $mainPay = $hdOrder['mainPay'] ?? 0;
- $cash = $hdOrder['cash'] ?? 0;
- $actPrice = $hdOrder['mainPay'] ?? 0;
- $getStaffId = $hdOrder['getStaffId'] ?? 0;
- $debtPrice = $hdOrder['debtPrice'] ?? 0;
- $remainDebtPrice = $hdOrder['remainDebtPrice'] ?? 0;
- $onlinePay = $hdOrder['onlinePay'] ?? 0;
- $fromType = $hdOrder['fromType'] ?? 0;
- $an = bcadd($an, $mainPay, 2);
- $an = bcadd($an,$cash,2);
- if ($onlinePay == dict::getDict('onlinePay', 'yes')) {
- //使用在线支付
- $incomeList['system']['amount'] = bcadd($incomeList['system']['amount'], $mainPay, 2);
- $incomeList['system']['num'] = bcadd($incomeList['system']['num'], 1);
- $incomeList['system']['category']['ls']['amount'] = bcadd($incomeList['system']['category']['ls']['amount'], $mainPay, 2);
- $incomeList['system']['category']['ls']['num'] = bcadd($incomeList['system']['category']['ls']['num'], 1);
- if ($cash > 0) {
- $incomeList['cash']['amount'] = bcadd($incomeList['cash']['amount'], $cash, 2);
- $incomeList['cash']['num'] = bcadd($incomeList['cash']['num'], 1);
- $incomeList['cash']['category']['ls']['amount'] = bcadd($incomeList['cash']['category']['ls']['amount'], $cash, 2);
- $incomeList['cash']['category']['ls']['num'] = bcadd($incomeList['cash']['category']['ls']['num'], 1);
- }
- } else {
- if ($fromType == dict::getDict('fromType', 'mt')) {
- //美团!!!
- $incomeList['mt']['amount'] = bcadd($incomeList['mt']['amount'], $mainPay, 2);
- $incomeList['mt']['num'] = bcadd($incomeList['mt']['num'], 1);
- } else {
- //非美团!!!
- if ($debtPrice > 0) {
- if ($remainDebtPrice > 0) {
- $incomeList['debt']['amount'] = bcadd($incomeList['debt']['amount'], $remainDebtPrice, 2);
- $incomeList['debt']['num'] = bcadd($incomeList['debt']['num'], 1);
- $incomeList['debt']['category']['ls']['amount'] = bcadd($incomeList['debt']['category']['ls']['amount'], $remainDebtPrice, 2);
- $incomeList['debt']['category']['ls']['num'] = bcadd($incomeList['debt']['category']['ls']['num'], 1);
- }
- $clearDebt = bcsub($debtPrice, $remainDebtPrice, 2);
- if ($clearDebt > 0) {
- $incomeList['debtClear']['amount'] = bcadd($incomeList['debtClear']['amount'], $clearDebt, 2);
- $incomeList['debtClear']['num'] = bcadd($incomeList['debtClear']['num'], 1);
- $incomeList['debtClear']['category']['ls']['amount'] = bcadd($incomeList['debtClear']['category']['ls']['amount'], $clearDebt, 2);
- $incomeList['debtClear']['category']['ls']['num'] = bcadd($incomeList['debtClear']['category']['ls']['num'], 1);
- }
- $currentAmount = bcsub($mainPay, $debtPrice, 2);
- } else {
- $currentAmount = $mainPay;
- }
- if ($currentAmount > 0) {
- //使用非在线支付
- switch ($payWay) {
- case dict::getDict('payWay', 'wxPay'):
- //员工微信总共收了多少笔多少钱
- $incomeList['kfWx']['amount'] = bcadd($incomeList['kfWx']['amount'], $currentAmount, 2);
- $incomeList['kfWx']['num'] = bcadd($incomeList['kfWx']['num'], 1);
- //批发开单、零售开单、批发结账、零售尾款各收了多少现金
- $incomeList['kfWx']['category']['ls']['amount'] = bcadd($incomeList['kfWx']['category']['ls']['amount'], $currentAmount, 2);
- $incomeList['kfWx']['category']['ls']['num'] = bcadd($incomeList['kfWx']['category']['ls']['num'], 1);
- //客1 客2 客3各收了多少钱
- if (isset($incomeList['kfWx']['class'][$getStaffId])) {
- $incomeList['kfWx']['class'][$getStaffId]['amount'] = bcadd($incomeList['kfWx']['class'][$getStaffId]['amount'], $currentAmount, 2);
- $incomeList['kfWx']['class'][$getStaffId]['num'] = bcadd($incomeList['kfWx']['class'][$getStaffId]['num'], 1);
- }
- //每个客服收的明细
- if (isset($incomeList['kfWx']['class'][$getStaffId]['itemList']['ls'])) {
- $incomeList['kfWx']['class'][$getStaffId]['itemList']['ls']['amount'] = floatval(bcadd($incomeList['kfWx']['class'][$getStaffId]['itemList']['ls']['amount'], $currentAmount, 2));
- $incomeList['kfWx']['class'][$getStaffId]['itemList']['ls']['num'] = bcadd($incomeList['kfWx']['class'][$getStaffId]['itemList']['ls']['num'], 1);
- }
- break;
- case dict::getDict('payWay', 'alipay'):
- $incomeList['aliPay']['amount'] = bcadd($incomeList['aliPay']['amount'], $currentAmount, 2);
- $incomeList['aliPay']['num'] = bcadd($incomeList['aliPay']['num'], 1);
- $incomeList['aliPay']['category']['ls']['amount'] = bcadd($incomeList['aliPay']['category']['ls']['amount'], $currentAmount, 2);
- $incomeList['aliPay']['category']['ls']['num'] = bcadd($incomeList['aliPay']['category']['ls']['num'], 1);
- break;
- case dict::getDict('payWay', 'cash'):
- $incomeList['cash']['amount'] = bcadd($incomeList['cash']['amount'], $currentAmount, 2);
- $incomeList['cash']['num'] = bcadd($incomeList['cash']['num'], 1);
- $incomeList['cash']['category']['ls']['amount'] = bcadd($incomeList['cash']['category']['ls']['amount'], $currentAmount, 2);
- $incomeList['cash']['category']['ls']['num'] = bcadd($incomeList['cash']['category']['ls']['num'], 1);
- break;
- case dict::getDict('payWay', 'bankCard'):
- $incomeList['bankCard']['amount'] = bcadd($incomeList['bankCard']['amount'], $currentAmount, 2);
- $incomeList['bankCard']['num'] = bcadd($incomeList['bankCard']['num'], 1);
- $incomeList['bankCard']['category']['ls']['amount'] = bcadd($incomeList['bankCard']['category']['ls']['amount'], $currentAmount, 2);
- $incomeList['bankCard']['category']['ls']['num'] = bcadd($incomeList['bankCard']['category']['ls']['num'], 1);
- break;
- case dict::getDict('payWay', 'unknown'):
- $incomeList['other']['amount'] = bcadd($incomeList['other']['amount'], $currentAmount, 2);
- $incomeList['other']['num'] = bcadd($incomeList['other']['num'], 1);
- $incomeList['other']['category']['ls']['amount'] = bcadd($incomeList['other']['category']['ls']['amount'], $currentAmount, 2);
- $incomeList['other']['category']['ls']['num'] = bcadd($incomeList['other']['category']['ls']['num'], 1);
- break;
- default:
- echo $mainPay.'--------';
- }
- }
- }
- }
- }
- $total = 0;
- foreach ($incomeList as $i) {
- $current = $i['amount'] ?? 0;
- $total = bcadd($current, $total, 2);
- }
- echo '<br />零售收入:' . $total . ' ' . $an . ' <br />';
- print_r($incomeList);
- die;
- }
- //即时配送
- public function actionGetBindAccount()
- {
- $merchant = WxOpenClass::getGhsWxInfo();
- $isOpen = 2;
- $r = miniUtil::getBindAccount($merchant, $isOpen);
- dd($r);
- }
- public function actionDada()
- {
- //https://github.com/wanDoubleMing/dada_openapi_php
- //初始化一个配置文件
- $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;
- //商户id
- $sourceId = 73753;
- $shopNo = 11047059;
- // 初始化一个config
- $config = new \Config($sourceId, $isOnline);
- //3.domain文件新建一个model,并初始化
- $orderModel = new \OrderModel();
- $orderModel->setShopNo($shopNo);
- $orderModel->setOriginId('2020043017180001');
- $orderModel->setCityCode('021');
- $orderModel->setCargoPrice(10);
- $orderModel->setIsPrepay(0);
- $orderModel->setReceiverName('测试达达');
- $orderModel->setReceiverAddress('上海市崇明岛');
- $orderModel->setReceiverLat(31.63);
- $orderModel->setReceiverLng(121.41);
- $orderModel->setReceiverPhone('15280215347');
- $orderModel->setCallback('https://api.saas.huaml.com/express/callback');
- // api主要有2个参数,一个是url, 一个是业务参数
- $addOrderApi = new \AddOrderApi(json_encode($orderModel));
- //5.初始化客户端,并调用rpc
- $dada_client = new \DadaRequestClient($config, $addOrderApi);
- $resp = $dada_client->makeRequest();
- echo json_encode($resp);
- }
- public function actionRabbit()
- {
- $orderId = 214752;
- $order = OrderService::getById($orderId);
- $sjId = $order['sjId'];
- $openMerchant = WxOpenService::getWxInfo();
- $merchant = MerchantService::getMerchantById($sjId);
- $shopId = $merchant['defaultShopId'];
- $params = ['sourceType' => $order['sourceType'], 'miniAppId' => $openMerchant['miniAppId'], 'orderId' => $orderId];
- $type = 'income';
- InformAdminService::addInform($shopId, $type, $params);
- }
- //添加优惠券 ssh 2020.5.5
- public function actionAddCoupon()
- {
- $merchant = MerchantService::getMerchantById(12358);
- $user = UserService::getById(12543444);
- UserService::focus($user, $merchant);
- }
- public function actionGetUnionId()
- {
- $merchant = MerchantService::getMerchantById(12358);
- $extend = MerchantExtendService::getBySjId(12358);
- $mcId = $extend['wxPayMerchantId'];
- $orderId = '200512145420123581254345688252';
- miniUtil::getPaidUnionId($merchant, 'o-hXO4qOzIVbUNVucoFzEiArOz5k', $mcId, $orderId, 0);
- }
- public function actionCalc()
- {
- $dis = mapUtil::calculateDistance('116.308479', '39.983171', '116.328479', '39.973171');
- echo $dis;
- }
- }
|