setSelect('id, name'); $data = DB::getListWithCriteria('school', $cri); Helper::ok($data['records']??[]); } public function actionDelete() { $id = Helper::getPostInt('id'); if ($id < 1) { Helper::error('参数错误'); } DB::deleteById('school', $id); Helper::ok(); } public function actionAdd() { $this->_save(); } public function actionEdit() { $id = Helper::getPostInt('id'); if (!$id) { Helper::error('参数错误'); } $this->_save($id); } private function _save($id = 0) { $data = [ 'name' => Helper::getPostString('name'), 'address' => Helper::getPostString('address'), 'person_num' => Helper::getPostString('person_num'), 'bind_user_id' => Helper::getPostInt('bind_user_id'), 'is_eleme_in_school' => Helper::getPostInt('is_eleme_in_school'), 'is_eleme_out_school' => Helper::getPostInt('is_eleme_out_school'), 'is_meituan_in_school' => Helper::getPostInt('is_meituan_in_school'), 'is_meituan_out_school' => Helper::getPostInt('is_meituan_out_school'), 'can_go_upstairs' => Helper::getPostInt('can_go_upstairs'), 'is_cooperate' => Helper::getPostInt('is_cooperate'), 'can_ride' => Helper::getPostInt('can_ride'), 'dormitory_distribution' => Helper::getPostString('dormitory_distribution'), 'qucan_station_distribution' => Helper::getPostString('qucan_station_distribution'), 'out_business_description' => Helper::getPostString('out_business_description'), 'memo' => Helper::getPostString('memo'), ]; $notNullField = ["name","address","person_num","bind_user_id","is_eleme_in_school","is_eleme_out_school" ,"is_meituan_in_school","is_meituan_out_school","can_go_upstairs","is_cooperate","can_ride"]; $allowEmptyField = ["bind_user_id","is_eleme_in_school","is_eleme_out_school","is_meituan_in_school" ,"is_meituan_out_school","can_go_upstairs","is_cooperate","can_ride"]; // 空字段检测 if (!Helper::checkEmptyKey($data, $notNullField, $allowEmptyField)) { Helper::error('参数错误'); } // 处理地区 $district = Helper::getArrParam($_POST, 'distinct', Helper::PARAM_KEY_TYPE['array_string']); $district = array_filter($district); if (count($district) != 3) { Helper::error('地区参数错误'); } $data['province'] = $district[0]; $data['city'] = $district[1]; $data['area'] = $district[2]; $name = $data['name']; // 检测名称重复 $cri = DbCriteria::simpleCompare(['name' => $name])->setSelect('id'); if ($id > 0) { $cri->addCondition('id!=' . $id); } if ($fid = DB::getScalerWithCriteria('school', $cri)) { Helper::error('学校名称已存在 ' . $fid); } if ($id) { DB::updateById('school', $data, $id); } else { DB::addData('school', $data); } Helper::ok(); } public function actionUpdateAttr() { $id = Helper::getPostInt('id'); $attr = Helper::getPostString('attr'); $value = Helper::getPostString('value'); if ($id <= 0 || !$attr) { Helper::error('参数错误'); } if (!in_array($attr, ['is_eleme_in_school', 'person_num'])) { Helper::error('参数错误2'); } if ($attr == 'is_eleme_in_school' && !in_array($value, [1, 0])) { Helper::error('参数错误3'); } if (DB::updateById('school', [$attr => $value], $id) === false) { Helper::error('更新失败'); } Helper::ok(); } private function _edit() { } }