yii2中实现模型保存前添加保存信息功能
2021-02-08 16:59:31
在模型中
public function beforeValidate()
{
$USERID = \Yii::$app->admin->identity->id;
$DEPID = \Yii::$app->admin->identity->depid;
$schoolid = \Yii::$app->admin->identity->schoolid;
if(parent::beforeValidate())
{
if ($this->isNewRecord) {
$this->USERID = $USERID;
$this->SCHOOLNO = $schoolid;
$this->DEPID = $DEPID;
$this->STATUS = 0;
// return parent::beforeValidate();
}
}
return parent::beforeValidate();
// return true;
}
public function beforeSave($insert)
{
//
if(\Yii::$app->request->post('modify', '')=='modify')
{
if($this->validatePassword($this->password)!=1)
{
$this->addError('username', '原密码错误,请输入正确的原密码');
return false;
}
}
// 新增记录和修改了密码
if ($this->isNewRecord || (!$this->isNewRecord && $this->password)) {
// $this->password = '44444';
// Yii::trace($this->password, "passwordpassword");
$this->setPassword($this->password);
$this->generateAuthKey();
$this->generatePasswordResetToken();
//如果不是超级管理员,就把自己的学校ID赋予自己创建的子账号
$username = \Yii::$app->admin->identity->username;
if($username!='super')
{
$schoolid = \Yii::$app->admin->identity->schoolid;
$this->schoolid = $schoolid;
}
//如果不是超级管理员,就把自己的学校ID赋予自己创建的子账号
}
return parent::beforeSave($insert);
}
public function beforeSave($insert)
{
if ($this->isNewRecord) {
//如果不是超级管理员,就把自己的学校ID赋予自己创建的子账号
$username = \Yii::$app->admin->identity->username;
$depid = \Yii::$app->admin->identity->depid;
$schoolid = \Yii::$app->admin->identity->schoolid;
$adminid = \Yii::$app->admin->identity->id;
if($username!='super')
{
$this->SCHOOLNO = $schoolid;
// echo $schoolid;
// exit;
}
//如果不是超级管理员,就把自己的学校ID赋予自己创建的子账号
}
return parent::beforeSave($insert);
}
public function afterSave($insert, $changedAttributes)
{
// 只有在新增或者修改了角色信息,那么才要修改角色信息
if ($insert) {
$depid = \Yii::$app->admin->identity->depid;
$PROPERTYNO = $depid.'-'.date("Y").'-'.$this->ID;
BfamsBooktable::updateAll(['PROPERTYNO' => $PROPERTYNO], ['ID' => $this->ID]);
// $PROPERTYNO = $depid.'-'.date("Y").$this->ID;
// $this->PROPERTYNO = $PROPERTYNO;
// $changedAttributes = [
// 'PROPERTYNO' => $PROPERTYNO,
// ]
// $changedAttributes['PROPERTYNO'] = '333';
}
parent::afterSave($insert, $changedAttributes);
}
public function beforeValidate()
{
$USERID = \Yii::$app->admin->identity->id;
$DEPID = \Yii::$app->admin->identity->depid;
$schoolid = \Yii::$app->admin->identity->schoolid;
if(parent::beforeValidate())
{
if ($this->isNewRecord) {
$this->USERID = $USERID;
$this->SCHOOLNO = $schoolid;
$this->DEPID = $DEPID;
$this->STATUS = 0;
// return parent::beforeValidate();
}
}
return parent::beforeValidate();
// return true;
}
public function beforeSave($insert)
{
//
if(\Yii::$app->request->post('modify', '')=='modify')
{
if($this->validatePassword($this->password)!=1)
{
$this->addError('username', '原密码错误,请输入正确的原密码');
return false;
}
}
// 新增记录和修改了密码
if ($this->isNewRecord || (!$this->isNewRecord && $this->password)) {
// $this->password = '44444';
// Yii::trace($this->password, "passwordpassword");
$this->setPassword($this->password);
$this->generateAuthKey();
$this->generatePasswordResetToken();
//如果不是超级管理员,就把自己的学校ID赋予自己创建的子账号
$username = \Yii::$app->admin->identity->username;
if($username!='super')
{
$schoolid = \Yii::$app->admin->identity->schoolid;
$this->schoolid = $schoolid;
}
//如果不是超级管理员,就把自己的学校ID赋予自己创建的子账号
}
return parent::beforeSave($insert);
}
public function beforeSave($insert)
{
if ($this->isNewRecord) {
//如果不是超级管理员,就把自己的学校ID赋予自己创建的子账号
$username = \Yii::$app->admin->identity->username;
$depid = \Yii::$app->admin->identity->depid;
$schoolid = \Yii::$app->admin->identity->schoolid;
$adminid = \Yii::$app->admin->identity->id;
if($username!='super')
{
$this->SCHOOLNO = $schoolid;
// echo $schoolid;
// exit;
}
//如果不是超级管理员,就把自己的学校ID赋予自己创建的子账号
}
return parent::beforeSave($insert);
}
public function afterSave($insert, $changedAttributes)
{
// 只有在新增或者修改了角色信息,那么才要修改角色信息
if ($insert) {
$depid = \Yii::$app->admin->identity->depid;
$PROPERTYNO = $depid.'-'.date("Y").'-'.$this->ID;
BfamsBooktable::updateAll(['PROPERTYNO' => $PROPERTYNO], ['ID' => $this->ID]);
// $PROPERTYNO = $depid.'-'.date("Y").$this->ID;
// $this->PROPERTYNO = $PROPERTYNO;
// $changedAttributes = [
// 'PROPERTYNO' => $PROPERTYNO,
// ]
// $changedAttributes['PROPERTYNO'] = '333';
}
parent::afterSave($insert, $changedAttributes);
}