| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- <?php
- namespace addons\AvoidTax\common\service;
- use addons\AvoidTax\common\enums\StatusEnum;
- use common\models\user\UserWithdrawLog;
- use addons\AvoidTax\common\models\TaxOrder;
- use addons\AvoidTax\common\models\TaxConfig;
- use addons\AvoidTax\common\models\TaxOrderLog;
- /**
- * FeeService class
- * @package addons\AvoidTax\common\service
- */
- class FeeService extends BaseService
- {
- /**
- * 手续费列表
- *
- * @param array $params
- * @return array
- */
- public function getOrderFeeList(array $params = [])
- {
- $page = $this->getPage($params);
- $limit = $this->getLimit($params);
- $data = TaxOrder::getPageList($page, $limit, function($model) use ($params) {
- $model->where(['mall_id' => $this->mall_id, 'sub_type' => TaxOrder::SUB_TYPE_TAX]);
- !empty($params['batch_num']) && $model->andWhere(['like', 'batch_num', $params['batch_num']]);
- !empty($params['order_sn']) && $model->andWhere(['like', 'order_sn', $params['order_sn']]);
- !empty($params['status']) && $model->andWhere(['=', 'status', $params['status']]);
- if (!empty($params['date'])) {
- $model->andWhere(['>=', 'created_at', strtotime($params['date'][0])]);
- $model->andWhere(['<=', 'created_at', strtotime($params['date'][1])]);
- }
- }, 'id desc');
- foreach ($data['list'] as $k => $v) {
- $data['list'][$k]['status_text'] = StatusEnum::getMap()[$v['status']];
- }
- // 导出列表
- $data['export_list'] = TaxOrder::fieldsList(TaxOrder::SUB_TYPE_TAX);
- return $data;
- }
- /**
- * 获取详情
- *
- * @param string $num
- * @return array
- */
- public function getOrderDetail(string $num)
- {
- $detail = TaxOrder::getOrderDetailByNum($num);
- $withdraw = $detail->withdraw;
- $detail = $detail->toArray();
- $detail['withdraw'] = $withdraw->toArray();
- return $detail;
- }
- /**
- * 重新提交
- *
- * @param integer $id
- * @return boolean
- */
- public function resub(int $id)
- {
- $order = TaxOrder::find()->where(['mall_id' => $this->mall_id, 'id' => $id])->one();
- if (empty($order)) {
- return $this->error('订单不存在');
- }
- $type = (new TaxConfigService(['mall_id' => $this->mall_id]))->getType();
- $service = new OrderService(['mall_id' => $this->mall_id]);
- // 自用版手续费打款
- if ($type == TaxConfig::PERSONAL) {
- $res = $service->transToTax(['batch_num' => $order->batch_num]);
- }
- // 服务商版手续费打款
- if ($type == TaxConfig::SERVICE) {
- $res = $service->bookTransToTax($order->batch_num);
- }
- return $res;
- }
- }
|