<?php
namespace admin\action;

class memberAction extends elementAction
{
	public function __construct($elename='member')
    {
		parent::__construct($elename);
	}

	public function edit()
	{
		$req = \mvc::$req;
		$key = $req['key'];
		$canSetFiled = ['u_mb','u_code','u_level','u_password', 'u_status','u_name','u_sex','u_email','u_company','u_address','u_adm_au_id','u_remark', 'link_role', 'u_ma_id','u_project_ids'];
		$setArr = [];
		$users = new \model\user\users();
		
		foreach($req as $filed=>$val)
		{
			if(in_array($filed, $canSetFiled))
				$setArr[$filed] = $val;
			if($filed == 'u_password' && strlen($val)!==32)
			{
				$setArr['u_password'] = $users->pass($val);
				$setArr['u_password_time'] = getNowTime();
			}
		}
		$setArr['u_update_time'] = getNowTime();
		if(empty($key)){
			$setArr['u_create_time'] = getNowTime();
			$setArr['u_from'] = 'cn';
			$chk = $users->getRowByMb($setArr['u_mb']);
			if(!empty($chk)) $this->msgJson("账号已存在");
			$id = $this->element->add($setArr);
			$this->successJson(['key'=>$id,'op'=>'add']);
		}else{
			if($this->element->edit($key,$setArr)){
				$this->successJson(['key'=>$key,'op'=>'edit']);
			}
		}
	}

	public function listView($id = 0)
	{
		$req = \mvc::$req;
		//前置条件
		$rules = $this->urlRulesToWhere($req);
        if(isset($req['title'])){
            \view::set('title',$req['title']);  
        }
		\view::set('req',$req);
		\view::set('active','member');
		\view::set('ele',$this->elecfg);
		\view::set('rulesArr',$rules);
		\view::put('element/list');
		
	}

	/**
	 * @method 检测会员是否存在
	 * @author zhengweihua 
	 * @copyright 2025-08-05
	 */
	public function checkMember()
	{
		$req = \mvc::$req;
		$users = new \model\user\users();
		if(!empty($req['u_mb'])){
			$chk = $users->getRowByMb($req['u_mb']);
			if(!empty($chk)){
				$this->successJson($chk);
			}
			$this->successJson([]);
		}
		$this->msgJson("参数错误");
	}

	public function changeUserStatus()
	{
		$req = \mvc::$req;
		$users = new \model\user\users();
		$data = $users->changeUserStatus(explode(',', $req['ids']), $req);
		$this->successJson($data);
	}
}