public static function save(Application_Model_O_ConsultationDepartments $obj, $extra = '')
 {
     if (!$obj->getModifiedFields()) {
         return $obj;
     }
     foreach ($obj->getModifiedFields() as $key => $value) {
         $field = self::$fields[strtolower($key)];
         if ($field) {
             $data[$field] = $value;
         }
     }
     if (!$obj->getId()) {
         $obj->setId(self::getDbTable()->insert($data, $extra));
         $obj->setNew(false);
     } else {
         self::getDbTable()->update($data, array('id = ?' => $obj->getId()));
     }
     return $obj;
 }
 public function departasyncajaxAction()
 {
     $this->getResponse()->setHeader('Content-Type', 'application/json');
     $this->_helper->viewRenderer->setNoRender(true);
     $this->_helper->layout()->disableLayout();
     $params = $this->_getAllParams();
     //var_dump($params);exit;
     $depart = new Application_Model_O_ConsultationDepartments();
     $validate = new Yy_Validate_Value();
     if ($validate->isValid($params['id'])) {
         $depart->setId($params['id']);
     } else {
         $depart->setCtime(date('Y-m-d H:i:s'));
     }
     if ($validate->isValid($params['name'])) {
         $depart->setName($params['name']);
     }
     if ($validate->isValid($params['category_id'])) {
         $depart->setCategory_id($params['category_id']);
     }
     if ($validate->isValid($params['sort'])) {
         $depart->setSort($params['sort']);
     }
     if ($validate->isValid($params['status'])) {
         $depart->setStatus($params['status']);
     }
     try {
         $depart->save();
         $id = $depart->getId();
         $url = '/diagnosis/departview?id=' . $id;
         $this->redirect($url);
     } catch (Zend_Db_Exception $e) {
         echo $e->getMessage();
         $this->redirect('/error?message=' . $e->getMessage());
     }
 }