ShopGoodsController.php 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. <?php
  2. namespace App\Http\Controllers\Admin\Shop;
  3. use Illuminate\Http\Request;
  4. use App\Services\AipHttpClient;
  5. use App\Http\Controllers\Controller;
  6. use Illuminate\Support\Facades\DB;
  7. use App\Models\Shop\ShopGoods;
  8. class ShopGoodsController extends Controller
  9. {
  10. public $Status = ['开启','关闭'];
  11. public $goodsType = ['1'=>'虚拟卡密'];
  12. public function index(Request $request)
  13. {
  14. $Status = $this->Status;
  15. $goodsType = $this->goodsType;
  16. return view('admin.shop.goods.index',compact("Status","goodsType"));
  17. }
  18. //列表
  19. public function getData(Request $request)
  20. {
  21. $model = ShopGoods::from('shop_goods as a')
  22. ->where(function($query) use ($request){
  23. if ($request->goods_name != '') {
  24. $query->where('a.goods_name', 'like' ,"%" . $request->goods_name ."%");
  25. }
  26. });
  27. $count = $model->count();
  28. $limit = $request->limit ?? 15;
  29. $offset = $request->page ? ($request->page - 1) * $limit : 0;
  30. $data = $model->limit($limit)->offset($offset)->select('a.*')->orderBy('a.rid','desc')->get();
  31. $goodsType = $this->goodsType;
  32. $data = $data->map(function($query) use ($goodsType){
  33. $query->goods_type_val = $goodsType[$query->goods_type];
  34. return $query;
  35. });
  36. return ['code' => '0', 'data' => $data, 'count' => $count];
  37. }
  38. //添加
  39. public function add(Request $request)
  40. {
  41. $data = ShopGoods::where('goods_name', $request->goods_name)->first();
  42. if(!empty($data)){
  43. return $this->responseData(400, '商品名称已存在');
  44. }
  45. $res = ShopGoods::create([
  46. 'goods_name' => $request->goods_name,
  47. 'goods_trx_price' => $request->goods_trx_price ?? 0,
  48. 'goods_usdt_price' => $request->goods_usdt_price ?? 0,
  49. 'goods_type' => $request->goods_type,
  50. 'show_notes' => $request->show_notes ?? '',
  51. 'seq_sn' => $request->seq_sn ?? 0,
  52. 'comments' => $request->comments ?? '',
  53. 'create_time' => nowDate()
  54. ]);
  55. return $res ? $this->responseData(200, '添加成功') : $this->responseData(400, '添加失败');
  56. }
  57. //删除
  58. public function delete(Request $request)
  59. {
  60. $res = ShopGoods::where('rid', $request->rid)->delete();
  61. return $res ? $this->responseData(200, '删除成功') : $this->responseData(400, '删除失败');
  62. }
  63. //编辑
  64. public function update(Request $request)
  65. {
  66. DB::beginTransaction();
  67. try {
  68. $data = ShopGoods::where('rid', $request->rid)->first();
  69. $data->goods_name = $request->goods_name;
  70. $data->goods_trx_price = $request->goods_trx_price ?? 0;
  71. $data->goods_usdt_price = $request->goods_usdt_price ?? 0;
  72. $data->goods_type = $request->goods_type;
  73. $data->seq_sn = $request->seq_sn ?? 0;
  74. $data->show_notes = $request->show_notes ?? '';
  75. $data->comments = $request->comments ?? '';
  76. $data->update_time = nowDate();
  77. $data->save();
  78. DB::commit();
  79. return $this->responseData(200, '更新成功');
  80. } catch (\Exception $e) {
  81. DB::rollBack();
  82. return $this->responseData(400, '更新失败'.$e->getMessage());
  83. }
  84. }
  85. // 编辑页面查看
  86. public function show(Request $request)
  87. {
  88. $Status = $this->Status;
  89. $goodsType = $this->goodsType;
  90. $data = ShopGoods::where('rid',$request->rid)->first();
  91. return view('admin.shop.goods.edit',compact("Status","goodsType","data"));
  92. }
  93. //编辑状态
  94. public function change_status(Request $request)
  95. {
  96. DB::beginTransaction();
  97. try {
  98. $data = ShopGoods::where('rid', $request->rid)->first();
  99. $data->status = $request->status == 1 ? 0 : 1;
  100. $data->save();
  101. DB::commit();
  102. return $this->responseData(200, '更新成功');
  103. } catch (\Exception $e) {
  104. DB::rollBack();
  105. return $this->responseData(400, '更新失败'.$e->getMessage());
  106. }
  107. }
  108. }