formatData($data); if (empty($data)) { return false; } $id = $this->insertGetId($data); return $id ? $id : false; } /** * 校验入库数据 * 20220119 */ private function formatData($data) { $useData = []; $fields = $this->getTableFields(); foreach ($data as $key => $value) { if (in_array($key, $fields)) { $useData[$key] = $value; } } return $useData; } public function getInfo($where, $field = "*", $row = true) { $info = $this->field($field)->where($where); if ($row) { $info = $info->find(); } else { $info = $info->select(); } return empty($info) ? false : $info; } public function updateinfo($where, $updateData) { $row = $this->where($where)->update($updateData); return empty($row) ? false : $row; } public function deleteinfo($where) { $row = $this->where($where)->delete(); return empty($row) ? false : $row; } public function getList($where = [], $field = "*", $page = 1, $size = 10, $order = "id desc", $group = "", $row = false) { $sqlObj = $this->where($where); if ("count" != $field) { if (empty($size)) { $sqlObj = $sqlObj->field($field)->order($order)->group($group); } else { $sqlObj = $sqlObj->field($field)->order($order)->group($group)->page($page, $size); } if ($row) { $data = $sqlObj->find(); } else { $data = $sqlObj->select(); } } else { $data = $sqlObj->count(); } return $data; } public function getlistbycoord($where, $page = 1, $size = 0) { $long = $where['gcj_long']; $lat = $where['gcj_lat']; $startinex = ($page - 1) * $size; $sql = " select * from ( select m.*, st_distance_sphere( point( CAST(m.gcj_long AS decimal(11,8)), CAST(m.gcj_lat AS decimal(11,8)) ), point( CAST(" . $long . " AS decimal(11,8)), CAST(" . $lat . " AS decimal(11,8)) ) ) as distance from t_mealcenter as m where is_active=1 ) as tab order by distance asc limit " . $startinex . "," . $size . " "; $list = $this->query($sql); return $list; } }