Account.php 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <?php
  2. namespace app\user\model;
  3. class Account extends Base
  4. {
  5. //设置字段信息
  6. protected $schema = [
  7. 'id' =>'bigint',//
  8. 'username' =>'varchar',//
  9. 'password' =>'varchar',//
  10. 'salt' =>'varchar',//
  11. 'status' =>'int',//
  12. 'mobile' =>'varchar',//
  13. 'level' =>'tinyint',//账户等级:1超管,2业务公司专用,3供应商专用
  14. 'is_pass' =>'int',//
  15. 'is_del' =>'int',//
  16. 'source' =>'varchar',//
  17. 'addtime' =>'datetime',//
  18. 'updatetime' =>'datetime',//
  19. ];
  20. protected $updateTime='updatetime';
  21. protected $createTime='addtime';
  22. public function userInfo(){
  23. return $this->belongsTo(User::class,"id","account_id")->bind(["nickname","user_mobile"=>"mobile","openId"]);
  24. }
  25. public function companyRelaton(){
  26. return $this->hasMany(AccountCompany::class,'account_id')->where(["is_del"=>0]);
  27. }
  28. public function accountItem(){
  29. return $this->belongsTo(AccountItem::class,'id',"account_id")->bind(["depart_name","itemid","depart_link","position"]);
  30. }
  31. public function changeAccount($id,$info=[]){
  32. $account = $this->findOrEmpty($id);
  33. if(empty($info)) return;
  34. if(key_exists("mobile",$info)){
  35. $account->username=$info['mobile'];
  36. $account->mobile=$info['mobile'];
  37. $account->userInfo->mobile=$info['mobile'];
  38. }
  39. if(key_exists('nickname',$info)){
  40. $account->userInfo->nickname=$info['nickname'];
  41. }
  42. if(key_exists('email',$info)){
  43. $account->userInfo->email=$info['email'];
  44. }
  45. $account->save();
  46. $account->userInfo->save();
  47. }
  48. }