家政小程序
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

OptionOrderController.php 3.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Models\OptionOrder;
  4. use App\Models\OptionValue;
  5. use App\Models\Classify;
  6. use Illuminate\Http\Request;
  7. class OptionOrderController extends Controller
  8. {
  9. public $classify_map = [];
  10. public $classify_name = [];
  11. public function __construct() {
  12. $classifies = Classify::all();
  13. foreach ($classifies as $classify) {
  14. $this->classify_map[$classify->id] = $classify;
  15. $this->classify_name[$classify->name] = $classify;
  16. }
  17. }
  18. public function store(Request $request) {
  19. $wechat_id = $request->header("openid");
  20. $options = $request->input("options");
  21. $id = $request->input("id");
  22. $address = $request->input('address');
  23. $contact = $request->input('contact');
  24. $phone = $request->input('phone');
  25. $notes = $request->input('notes');
  26. $classify = $request->input('type');
  27. $price = $request->input('price');
  28. $status = $request->input('status');
  29. $remark = $request->input('remark');
  30. if($options && $address && $contact && $phone && $classify) {
  31. if(!$id) {
  32. $option_order = new OptionOrder;
  33. $option_order->status = 0;
  34. $option_order->price = 0;
  35. } else {
  36. $option_order = OptinOrder::find($id);
  37. $option_order->status = $status;
  38. $option_order->price = $price;
  39. }
  40. $option_order->address = $address;
  41. $option_order->contact = $contact;
  42. $option_order->phone = $phone;
  43. $option_order->notes = $notes;
  44. $option_order->remark = $remark;
  45. $option_order->classify = $classify;
  46. $option_order->options = json_encode($options, JSON_UNESCAPED_UNICODE);
  47. if($classify) {
  48. $classify2 = $this->classify_name[$classify]->name;
  49. $pid = $this->classify_name[$classify]->pid;
  50. $classify1 = $this->classify_map[$pid]->name;
  51. $option_order->classify1 = $classify1;
  52. $option_order->classify2 = $classify2;
  53. $option_order->classify = $this->classify_name[$classify]->id;
  54. $option_order->photo = $this->classify_name[$classify]->photo;
  55. }
  56. $option_order->wechat_id = $wechat_id;
  57. $option_order->save();
  58. return Response()->json([
  59. "status" => 0,
  60. "message" => "保存成功"
  61. ]);
  62. } else {
  63. return Response()->json([
  64. "status" => -1,
  65. "message" => "信息不能为空!",
  66. ]);
  67. }
  68. }
  69. /**
  70. * 每页20进行分页
  71. * @param Request $request
  72. * @return mixed
  73. */
  74. /**
  75. * 每页20进行分页
  76. * @param Request $request
  77. * @return mixed
  78. */
  79. public function list(Request $request)
  80. {
  81. $keyword = $request->input('keyword');
  82. if($keyword) {
  83. $data = MaternityMatronOrder::where("notes", $keyword)
  84. ->orWhere("contact", $keyword)
  85. ->orWhere("classify", $keyword)
  86. ->orWhere("phone", $keyword)
  87. ->orWhere("remark", $keyword)
  88. ->paginate();
  89. } else {
  90. $data = MaternityMatronOrder::paginate();
  91. }
  92. $data->appends(["keyword" => $keyword]);
  93. return $data;
  94. }
  95. }