Manage.php 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: hp
  5. * Date: 2017/11/21
  6. * Time: 8:59
  7. */
  8. namespace App\Modules\Manage\Models;
  9. use Illuminate\Database\Eloquent\Model;
  10. class Manage extends Model
  11. {
  12. protected $table = 'distribution_manages';
  13. protected $fillable = ['id','account','role','nickname', 'latest_login_time','remark','latest_login_ip','password','register_ip','is_enabled','number'];
  14. static function getByAccount($account)
  15. {
  16. return self::where('account', $account)->first();
  17. }
  18. static function getAll($is_all=1)
  19. {
  20. if($is_all){
  21. return self::orderBy('is_enabled', 'desc')->orderBy('id', 'desc')->paginate();
  22. }else{
  23. return self::where('is_enabled', 1)->orderBy('id', 'desc')->paginate();
  24. }
  25. }
  26. static function add($params)
  27. {
  28. return self::firstOrCreate($params);
  29. }
  30. static function getById($id)
  31. {
  32. return self::where('id', $id)->first();
  33. }
  34. //创建管理后台
  35. static function createManage($params)
  36. {
  37. $name = isset($params['name']) ? trim($params['name']) : '';
  38. $account = isset($params['account']) ? trim($params['account']) : '';
  39. $password = isset($params['password']) ? trim($params['password']) : '';
  40. $role = isset($params['role']) ? trim($params['role']) : '';
  41. $nickname = isset($params['nickname']) ? trim($params['nickname']) : '';
  42. $latest_login_time = date("Y-m-d H:i:s");
  43. $remark = isset($params['remark']) ? trim($params['remark']) : '';
  44. $latest_login_ip = $register_ip = isset($params['register_ip']) ? trim($params['register_ip']) : '';
  45. if(!$account || !$password) return response()->error('PARAM_ERROR');
  46. return self::firstOrCreate(compact('account'),compact('password','role','nickname','latest_login_ip','latest_login_time','remark','register_ip'));
  47. }
  48. //修改密码
  49. static function modifyPassword($account, $password)
  50. {
  51. return self::where('account', $account)->update(compact('password'));
  52. }
  53. //根据商务编号获取商务用户信息
  54. static function getBusinesserByNumber($number)
  55. {
  56. return self::where('number',$number)->first();
  57. }
  58. /**
  59. * 获取商务列表
  60. * @param $params[]
  61. * search_name: 搜索名称 可选
  62. * start_date:开始时间 可选
  63. * end_date:结束时间 可选
  64. * is_enabled: 0:不可用; 1:可用
  65. * @param $isAll
  66. * @return mixed
  67. */
  68. public static function getBusinessManageList($params=[], $isAll = false) {
  69. $search_object = self::orderBy('id','asc');
  70. $search_object->whereIn('role', ['business', 'business_leader']);
  71. if(isset($params['search_name']) && $params['search_name']) {
  72. $search_object->where('nickname', 'like', "%".$params['search_name']."%");
  73. }
  74. if(isset($params['start_date']) && $params['start_date']) $search_object->where('created_at','>=', $params['start_date']);
  75. if(isset($params['end_date']) && $params['end_date']) $search_object->where('created_at','<=', $params['end_date']);
  76. if(isset($params['is_enabled']) && is_numeric($params['is_enabled'])) $search_object->where('is_enabled', $params['is_enabled']);
  77. if($isAll) {
  78. return $search_object->get();
  79. } else {
  80. return $search_object->paginate();
  81. }
  82. }
  83. }