Invoice.php 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <?php
  2. namespace app\admin\controller\shopro\order;
  3. use think\Db;
  4. use app\admin\controller\shopro\Common;
  5. use app\admin\model\shopro\order\Invoice as OrderInvoiceModel;
  6. use app\admin\model\shopro\order\Order as OrderModel;
  7. class Invoice extends Common
  8. {
  9. public function _initialize()
  10. {
  11. parent::_initialize();
  12. $this->model = new OrderInvoiceModel;
  13. }
  14. /**
  15. * 发票列表
  16. *
  17. * @return \think\Response
  18. */
  19. public function index()
  20. {
  21. if (!$this->request->isAjax()) {
  22. return $this->view->fetch();
  23. }
  24. $invoices = $this->model->sheepFilter()->with(['user', 'order', 'order_items'])
  25. ->paginate(request()->param('list_rows', 10))->each(function ($invoice) {
  26. $invoice->order_status = $invoice->order_status;
  27. $invoice->order_status_text = $invoice->order_status_text;
  28. $invoice->order_fee = $invoice->order_fee;
  29. });
  30. $this->success('获取成功', null, $invoices);
  31. }
  32. public function confirm($id)
  33. {
  34. if (!$this->request->isAjax()) {
  35. return $this->view->fetch();
  36. }
  37. $params = $this->request->param();
  38. $invoice = $this->model->waiting()->whereIn('id', $id)->find();
  39. if (!$invoice) {
  40. $this->error(__('No Results were found'));
  41. }
  42. $invoice->download_urls = $params['download_urls'] ?? null;
  43. $invoice->invoice_amount = $params['invoice_amount'];
  44. $invoice->status = 'finish';
  45. $invoice->finish_time = time();
  46. $invoice->save();
  47. $this->success('开具成功', null, $invoice);
  48. }
  49. }