| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- <?php
- namespace biz\stat\classes;
- use biz\base\classes\BaseClass;
- use biz\stat\models\StatCg;
- use common\components\dict;
- use common\components\util;
- class StatKdMonthClass extends BaseClass
- {
- public static $baseFile = '\biz\stat\models\StatKdMonth';
- //每月花材统计 ssh 20211012
- public static function replace($shop, $amount, $payWay, $date = null)
- {
- if ($date == null) {
- $time = date('Ym');
- $year = date('Y');
- $month = date('m');
- } else {
- $timestamp = strtotime($date);
- $time = date('Ym', $timestamp);
- $year = date('Y', $timestamp);
- $month = date('m', $timestamp);
- }
- $mainId = $shop->mainId ?? 0;
- $stat = self::getByCondition(['mainId' => $mainId, 'time' => $time], true);
- if (empty($stat)) {
- $stat = self::add(['mainId' => $mainId, 'time' => $time, 'year' => $year, 'month' => $month], true);
- }
- $id = $stat->id;
- $unique = self::getLockById($id);
- $currentAmount = bcadd($unique->amount, $amount, 2);
- $unique->amount = $currentAmount;
- $payWayMap = dict::getDict('payWay');
- switch ($payWay) {
- case $payWayMap['wxPay']:
- $currentWx = bcadd($unique->wx, $amount, 2);
- $unique->wx = $currentWx;
- break;
- case $payWayMap['alipay']:
- $currentAliPay = bcadd($unique->alipay, $amount, 2);
- $unique->alipay = $currentAliPay;
- break;
- case $payWayMap['balancePay']:
- $currentBalance = bcadd($unique->balance, $amount, 2);
- $unique->balance = $currentBalance;
- break;
- case $payWayMap['debtPay']:
- $currentDebt = bcadd($unique->debt, $amount, 2);
- $unique->debt = $currentDebt;
- break;
- case $payWayMap['cash']:
- $currentCash = bcadd($unique->cash, $amount, 2);
- $unique->cash = $currentCash;
- break;
- case $payWayMap['bankCard']:
- $currentBank = bcadd($unique->bank, $amount, 2);
- $unique->bank = $currentBank;
- break;
- default:
- }
- $unique->save();
- }
- }
|