model = new OrderTable(); } /** * 获取订单列表 * @param array $where * @return array */ public function getPage(array $data = []) { $where = []; $field = 'id,resource_id,payment_id,order_type,order_status,payment_type,order_amount,course_id,class_id,staff_id,after_sales_status,after_sales_reason,after_sales_time,created_at,updated_at,payment_time,subscription_payment_time'; $order = 'id desc'; if($data['order_status']){ $where[] = ['order_status','=',$data['order_status']]; } if($data['payment_type']){ $where[] = ['payment_type','=',$data['payment_type']]; } if($data['resource_id']){ $where[] = ['resource_id','=',$data['resource_id']]; } if($data['order_type']){ $where[] = ['order_type','=',$data['order_type']]; } $search_model = $this->model->where($where)->with(['customerResources','course','classGrade','personnel'])->field($field)->order($order); return $this->pageQuery($search_model, function ($item, $key) { $type = [1=>'新订单',2=>'续费订单',3=>'内部员工订单']; $item['type'] = $type[$item['order_type']] ?? ''; }); } /** * 获取订单信息 * @param int $id * @return array */ public function getInfo(int $id) { $field = 'id,resource_id,payment_id,order_status,payment_type,order_amount,course_id,class_id,staff_id,after_sales_status,after_sales_reason,after_sales_time,created_at,updated_at,payment_time,subscription_payment_time'; $info = $this->model->field($field)->where([['id', "=", $id]])->with(['customerResources','course','classGrade','personnel'])->findOrEmpty()->toArray(); return $info; } /** * 添加订单 * @param array $data * @return mixed */ public function add(array $data) { $personnel = new Personnel(); // $data['staff_id'] = $personnel->where(['sys_user_id' => $this->uid])->value("id"); // if(!$data['staff_id']){ // return fail("操作人员角色不对"); // } $cr = new CustomerResources(); $data['campus_id'] = $cr->where(['id' => $data['resource_id']])->value("campus"); $data['staff_id'] = 51; $res = $this->model->create($data); return success("操作成功"); } /** * 订单编辑 * @param int $id * @param array $data * @return bool */ public function edit(int $id, array $data) { $cr = new CustomerResources(); $data['campus_id'] = $cr->where(['id' => $data['resource_id']])->value("campus"); $this->model->where([['id', '=', $id]])->update($data); return true; } /** * 删除订单 * @param int $id * @return bool */ public function del(int $id) { $model = $this->model->where([['id', '=', $id]])->find(); $res = $model->delete(); return $res; } public function getCustomerResourcesAll(){ $customerResourcesModel = new CustomerResources(); return $customerResourcesModel->select()->toArray(); } public function getCourseAll(){ $courseModel = new Course(); return $courseModel->select()->toArray(); } public function getClassGradeAll(){ $classGradeModel = new ClassGrade(); return $classGradeModel->select()->toArray(); } public function getPersonnelAll(){ $personnelModel = new Personnel(); return $personnelModel->select()->toArray(); } }