Ejemplo n.º 1
0
 function update($data, $filter)
 {
     $c = parent::update($data, $filter);
     if ($filter['role_id']) {
         $role_id = array();
         foreach ($this->getList('role_id', $filter) as $r) {
             $role_id[] = $r['role_id'];
         }
     } else {
         $role_id = $filter['role_id'];
     }
     if (count($role_id) == 1) {
         $rows = $this->db->select('select action_id from sdb_lnk_acts where role_id in (' . implode(',', $role_id) . ')');
         $in_db = array();
         foreach ($rows as $r) {
             $in_db[] = $r['action_id'];
         }
         $data['actions'] = $data['actions'] ? $data['actions'] : array();
         $to_add = array_diff($data['actions'], $in_db);
         $to_del = array_diff($in_db, $data['actions']);
         if (count($to_add) > 0) {
             $sql = 'INSERT INTO `sdb_lnk_acts` (`role_id`,`action_id`) VALUES ';
             foreach ($to_add as $action_id) {
                 $actions[] = "({$role_id[0]},{$action_id})";
             }
             $sql .= implode($actions, ',') . ';';
             $a = $this->db->exec($sql);
         }
         if (count($to_del) > 0) {
             $this->db->exec('delete from sdb_lnk_acts where action_id in (' . implode(',', $to_del) . ') and role_id=' . intval($role_id[0]));
         }
     } else {
     }
     return $c;
 }
Ejemplo n.º 2
0
 function update($data, $filter, &$message)
 {
     if (!$this->findError($data, $message)) {
         return false;
     }
     parent::update($data, $filter);
     return true;
 }
Ejemplo n.º 3
0
 function update($data, $filter)
 {
     if ($data['prt_tmpl_title']) {
         if (has_unsafeword($data['prt_tmpl_title'])) {
             trigger_error('无法保存,标题含有非法字符', E_USER_ERROR);
             return false;
         }
         if (!$filter['prt_tmpl_id']) {
             trigger_error('无法保存,模板名称不能重复', E_USER_ERROR);
             return false;
         }
         $sql = 'select prt_tmpl_id from sdb_print_tmpl where prt_tmpl_id!=' . intval($filter['prt_tmpl_id']) . ' and prt_tmpl_title="' . $this->db->quote($data['prt_tmpl_title']) . '"';
         if ($r = $this->db->selectrow($sql)) {
             trigger_error('无法保存,存在同名模板', E_USER_ERROR);
             return false;
         }
     }
     return parent::update($data, $filter);
 }
Ejemplo n.º 4
0
 public function update($data, $filter)
 {
     if (parent::update($data, $filter) == true) {
         $agids = $this->db->select("SELECT goods_id FROM sdb_goods WHERE " . $this->_filter($filter));
         $gids = array();
         foreach ($agids as $id) {
             $gids[] = $id['goods_id'];
         }
         $this->syncProNameByGoodsId($gids);
         return true;
     } else {
         return false;
     }
 }
Ejemplo n.º 5
0
 function update($data, $filter)
 {
     $oPointHistory =& $this->system->loadModel('trading/pointHistory');
     $oMemberPoint =& $this->system->loadModel('trading/memberPoint');
     foreach ($data as $k => $v) {
         if (substr($k, 0, 6) == 'attr__') {
             foreach ($this->getList("member_id", $filter) as $key => $value) {
                 $mem['value'] = $v;
                 $mem['attr_id'] = substr($k, 6, strlen($k));
                 $mem['member_id'] = $value['member_id'];
                 $this->updateMemAttr($mem['member_id'], $mem['attr_id'], $mem);
             }
             unset($data[$k]);
         }
         if ($k == "point") {
             if ($v < 0) {
                 $vPoint = 0;
             } else {
                 $vPoint = $v;
             }
             foreach ($this->getList("member_id", $filter) as $key => $value) {
                 $mem['member_id'] = $value['member_id'];
                 $nPoint = $oMemberPoint->getMemberPoint($mem['member_id']);
                 $nPoint = $vPoint - $nPoint;
                 $aPointHistory = array('member_id' => $mem['member_id'], 'point' => $nPoint, 'reason' => 'operator_adjust', 'related_id' => $this->system->op_id);
                 $oPointHistory->addHistory($aPointHistory);
             }
         }
     }
     $result = parent::update($data, $filter, $this);
     /*$rows = $this->getList('*',$filter,0,20); //todo:
       if (isset($data['advance']))
           $action[]='changeadvance';
       if (isset($data['point']))
           $action[]='changepoint';
       if (isset($data['level']))
            $action[]='changelevel';
       if ($rows){
           $account = $this->system->loadModel('member/account');
           foreach ($rows as $key => $val){
               if ($action){
                   foreach($action as $act){
                       $account->fireEvent($act,$val,$val['member_id']);
                   }
               }
           }
       }*/
     return $result;
 }