Beispiel #1
0
 /**
  * @abstract    添加自定义表单项
  * @return      null
  */
 public function saveAction()
 {
     // 返回值数组
     $result = array('success' => true, 'saveOrNot' => true, 'info' => '添加成功');
     $request = $this->getRequest()->getParams();
     $now = date('Y-m-d H:i:s');
     $user = 1;
     // 需替换为当前用户ID
     $val = (object) $request;
     $form = new Admin_Model_Form();
     $defaultValues = $val->defaultValues;
     // 编辑
     if ($val->id) {
         // 检查字段名称是否已存在
         if ($form->fetchAll("id != {$val->id} and model_id = " . $val->model_id . " and state = 1 and name = '" . $val->name . "'")->count() > 0) {
             $result['result'] = false;
             $result['saveOrNot'] = false;
             $result['info'] = "字段名称“" . $val->name . "”已经存在";
             echo Zend_Json::encode($result);
             exit;
         }
         $result['info'] = '提交成功';
         $data = array('name' => $val->name, 'type' => $val->type, 'length' => isset($val->length) ? $val->length : "", 'nullable' => isset($val->nullable) ? 1 : 0, 'multi' => isset($val->multi) ? 1 : 0, 'description' => $val->description, 'remark' => $val->remark, 'state' => isset($val->state) ? 1 : 0, 'enumlist' => isset($val->enumlistid) ? $val->enumlistid : "", 'model_id' => $val->model_id, 'default_value' => $defaultValues ? $defaultValues : (isset($val->default_value) ? $val->default_value : ""), 'update_time' => $now, 'update_user' => $user);
         $where = "id = " . $val->id;
         try {
             $form->update($data, $where);
         } catch (Exception $e) {
             $result['result'] = false;
             $result['info'] = $e->getMessage();
             echo Zend_Json::encode($result);
             exit;
         }
     } else {
         // 检查字段名称是否已存在
         if ($form->fetchAll("model_id = " . $val->model_id . " and state = 1 and name = '" . $val->name . "'")->count() > 0) {
             $result['result'] = false;
             $result['saveOrNot'] = false;
             $result['info'] = "字段名称“" . $val->name . "”已经存在";
             echo Zend_Json::encode($result);
             exit;
         }
         // 获取顺序
         $sort = $form->fetchAll("model_id = " . $val->model_id . " and state = 1")->count() + 1;
         $data = array('name' => $val->name, 'type' => $val->type, 'length' => isset($val->length) ? $val->length : "", 'nullable' => isset($val->nullable) ? 1 : 0, 'multi' => isset($val->multi) ? 1 : 0, 'description' => $val->description, 'remark' => $val->remark, 'state' => isset($val->state) ? 1 : 0, 'enumlist' => isset($val->enumlistid) ? $val->enumlistid : "", 'model_id' => $val->model_id, 'default_value' => $defaultValues ? $defaultValues : (isset($val->default_value) ? $val->default_value : ""), 'form_sort' => $sort, 'create_time' => $now, 'create_user' => $user, 'update_time' => $now, 'update_user' => $user);
         try {
             $form->insert($data);
         } catch (Exception $e) {
             $result['result'] = false;
             $result['info'] = $e->getMessage();
             echo Zend_Json::encode($result);
             exit;
         }
     }
     echo Zend_Json::encode($result);
     exit;
 }