|
@@ -18,6 +18,7 @@ use bizGhs\clear\classes\OrderCgClearClass;
|
|
|
use bizHd\purchase\classes\PurchaseClass;
|
|
use bizHd\purchase\classes\PurchaseClass;
|
|
|
use bizHd\purchase\classes\PurchaseItemClass;
|
|
use bizHd\purchase\classes\PurchaseItemClass;
|
|
|
use bizHd\purchase\classes\PurchaseSnClass;
|
|
use bizHd\purchase\classes\PurchaseSnClass;
|
|
|
|
|
+use Yii;
|
|
|
use bizHd\shop\classes\MainClass;
|
|
use bizHd\shop\classes\MainClass;
|
|
|
use common\components\dict;
|
|
use common\components\dict;
|
|
|
use common\components\imgUtil;
|
|
use common\components\imgUtil;
|
|
@@ -185,6 +186,12 @@ class PurchaseService extends BaseService
|
|
|
//所有的欠款采购单 ssh 2021.1.26
|
|
//所有的欠款采购单 ssh 2021.1.26
|
|
|
public static function getDebtList($where)
|
|
public static function getDebtList($where)
|
|
|
{
|
|
{
|
|
|
|
|
+ $get = Yii::$app->request->get();
|
|
|
|
|
+ $allowedPageSizes = [20, 50, 100, 300];
|
|
|
|
|
+ $pageSize = isset($get['pageSize']) && in_array((int)$get['pageSize'], $allowedPageSizes, true)
|
|
|
|
|
+ ? (int)$get['pageSize'] : 20;
|
|
|
|
|
+ $page = max(1, (int)($get['page'] ?? 1));
|
|
|
|
|
+
|
|
|
$list = PurchaseClass::getAllList('*', $where, 'addTime DESC');
|
|
$list = PurchaseClass::getAllList('*', $where, 'addTime DESC');
|
|
|
$synced = [];
|
|
$synced = [];
|
|
|
$clearedSum = '0.00';
|
|
$clearedSum = '0.00';
|
|
@@ -200,9 +207,18 @@ class PurchaseService extends BaseService
|
|
|
$clearedSum = bcadd($clearedSum, (string)($row['hasPayDebt'] ?? 0), 2);
|
|
$clearedSum = bcadd($clearedSum, (string)($row['hasPayDebt'] ?? 0), 2);
|
|
|
$remainSum = bcadd($remainSum, (string)($row['remainDebtPrice'] ?? 0), 2);
|
|
$remainSum = bcadd($remainSum, (string)($row['remainDebtPrice'] ?? 0), 2);
|
|
|
}
|
|
}
|
|
|
|
|
+ $totalNum = count($synced);
|
|
|
|
|
+ $totalPage = max(1, (int)ceil($totalNum / $pageSize));
|
|
|
|
|
+ if ($page > $totalPage) {
|
|
|
|
|
+ $page = $totalPage;
|
|
|
|
|
+ }
|
|
|
|
|
+ $offset = ($page - 1) * $pageSize;
|
|
|
return [
|
|
return [
|
|
|
- 'list' => $synced,
|
|
|
|
|
- 'debtNum' => count($synced),
|
|
|
|
|
|
|
+ 'list' => array_slice($synced, $offset, $pageSize),
|
|
|
|
|
+ 'debtNum' => $totalNum,
|
|
|
|
|
+ 'totalNum' => $totalNum,
|
|
|
|
|
+ 'totalPage' => $totalPage,
|
|
|
|
|
+ 'moreData' => $page < $totalPage ? 1 : 0,
|
|
|
'clearedAmount' => floatval($clearedSum),
|
|
'clearedAmount' => floatval($clearedSum),
|
|
|
'remainDebtAmount' => floatval($remainSum),
|
|
'remainDebtAmount' => floatval($remainSum),
|
|
|
];
|
|
];
|