ProductConfig.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. <?php
  2. declare(strict_types=1);
  3. namespace app\admin\controller\goods;
  4. use app\common\controller\Backend;
  5. use think\annotation\route\Group;
  6. use think\annotation\route\Route;
  7. use app\admin\traits\Actions;
  8. use app\common\model\StockConfig;
  9. use app\common\model\ProductConfig as ProductConfigModel;
  10. use app\common\model\PackSpecs as PackSpecsModel;
  11. #[Group("goods/product_config")]
  12. class ProductConfig extends Backend
  13. {
  14. use Actions;
  15. protected function _initialize()
  16. {
  17. parent::_initialize();
  18. $this->model = new ProductConfigModel();
  19. $this->assign('varietyList', StockConfig::where('type_id', 'variety_name')->column('title', 'id'));
  20. $this->assign('packSpecsList', PackSpecsModel::column('title', 'id'));
  21. }
  22. //删除
  23. #[Route('GET,JSON', 'index')]
  24. public function index()
  25. {
  26. if (false === $this->request->isAjax()) {
  27. return $this->fetch();
  28. }
  29. if ($this->request->post('selectpage')) {
  30. return $this->selectpage();
  31. }
  32. [$where, $order, $limit, $with] = $this->buildparams();
  33. $list = $this->model
  34. ->alias('p')
  35. ->leftJoin('pack_specs s',"p.pack_specs_id = s.id")
  36. ->field('p.*,s.title as pack_specs_title,s.labor_cost_money,s.one_surcharge_money,s.two_surcharge_money')
  37. ->where($where)
  38. ->order($order)
  39. ->paginate($limit)
  40. ->each(function ($item, $key) {
  41. return $item;
  42. });
  43. $result = ['total' => $list->total(), 'rows' => $list->items()];
  44. return json($result);
  45. }
  46. //导入
  47. #[Route("GET", "import")]
  48. public function import()
  49. {
  50. return "导入";
  51. }
  52. //下载
  53. #[Route("GET", "download")]
  54. public function download()
  55. {
  56. return "下载";
  57. }
  58. }