コード例 #1
0
 function delete()
 {
     $id = $this->_postid('id');
     if (!$id) {
         showError('参数丢失');
     }
     $rs = D('steadmin')->where(array('user_id' => $id))->find();
     if (!parent::_checkIsAdmin() || $rs['city_id'] != steadmin::$adminInfo['city_id']) {
         showError('权限不足');
     }
     if ($this->isLocal) {
         D('steadmin')->delAdmin(array('user_id' => $id));
     } else {
         //从企业号通讯录删除
         T('weixin/qy/qyWeixin.api');
         qyApi::init(steadmin::$adminInfo['city_id']);
         //是否只存在于小管家部门
         if (strpos($rs['openid'], 'steward_') !== false) {
             if (!qyApi::userDelete($rs['openid']) && strpos(qyApi::$errorMsg, '60111') !== 0) {
                 $this->JsonReturn('从企业号通讯录删除失败 ' . qyApi::$errorMsg);
             } else {
                 D('steadmin')->delAdmin(array('user_id' => $id));
             }
         } else {
             $corp_info = $this->_getAdminSetting('corp_info');
             $onlineinfo = qyApi::userGet($rs['openid']);
             foreach ($onlineinfo['department'] as $dk => $dv) {
                 if ($dv == $corp_info['departmentId']) {
                     unset($onlineinfo['department'][$dk]);
                     break;
                 }
             }
             $qiyehaoinfo['userid'] = $rs['openid'];
             $qiyehaoinfo['department'] = $onlineinfo['department'];
             if (!qyApi::userUpdate($qiyehaoinfo) && strpos(qyApi::$errorMsg, '60111') !== 0) {
                 $this->JsonReturn('从企业号小管家通讯录删除失败 ' . qyApi::$errorMsg);
             } else {
                 D('steadmin')->delAdmin(array('user_id' => $id));
             }
         }
     }
     //===记录操作日志====
     parent::saveSySLog(3, array(), $id, array('user_id' => $id), '帐号管理-删除');
     //===记录操作日志====
     //DOTO:清除相关数据
     $this->JsonReturn('ok', null, 1);
 }