Institution.php 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. <?php
  2. namespace app\admin\controller;
  3. use app\admin\BaseController;
  4. use app\admin\controller\Admin;
  5. use app\admin\model\Admin as AdminList;
  6. use app\admin\model\Department as DepartmentModel;
  7. use app\admin\validate\AdminCheck;
  8. use app\admin\validate\FinancialValidate;
  9. use think\exception\ValidateException;
  10. use think\facade\Db;
  11. use think\facade\Session;
  12. use think\facade\View;
  13. class Institution extends BaseController
  14. {
  15. /**
  16. * 构造函数
  17. */
  18. public function __construct()
  19. {
  20. $this->adminModel = new AdminList();
  21. $this->model = new DepartmentModel();
  22. $this->uid = get_login_admin('id');
  23. }
  24. public function datalist()
  25. {
  26. if (request()->isAjax()) {
  27. $param = get_params();
  28. $unit_name =get_login_admin("unit_name");
  29. $where[] = [
  30. ["delete_time","=",0],
  31. ["pid","=",0],
  32. ["type","=",1],
  33. ["entrust_unit","=",$unit_name]
  34. ];
  35. if (!empty($param['keywords'])) {
  36. $keywordWhere = ['id|username|nickname|desc|mobile', 'like', '%' . $param['keywords'] . '%'];
  37. $where = array_merge($where, [$keywordWhere]);
  38. }
  39. $rows = empty($param['limit']) ? get_config('app . page_size') : $param['limit'];
  40. $order = empty($param['order']) ? 'id desc' : $param['order'];
  41. $list = $this->model->where($where)->field('id,title,leader_id,phone,landline,address,company_type,authorization_module')
  42. ->order($order)->paginate($rows, false, ['query' => $param])
  43. ->each(function ($item){
  44. $department =$item->id;
  45. $item->ProprietorNum =Db::name("admin")->where("unit_name","in","$department")->count();
  46. $item->leader = Db::name("admin")->where("id",$item->leader_id)->value("nickname");
  47. $item->username = Db::name("admin")->where("id",$item->leader_id)->value("username");
  48. });
  49. return table_assign(0, '', $list);
  50. } else {
  51. return view();
  52. }
  53. }
  54. /**
  55. * 编辑
  56. */
  57. public function edit()
  58. {
  59. $param = get_params();
  60. // halt($param);
  61. if (request()->isAjax()) {
  62. try {
  63. $param['update_time'] = time();
  64. $this->model->where('id', $param['id'])->strict(false)->field(true)->update($param);
  65. add_log('edit', $param['id'], $param);
  66. } catch(\Exception $e) {
  67. return to_assign(1, '操作失败,原因:'.$e->getMessage());
  68. }
  69. return to_assign();
  70. }else{
  71. $id = isset($param['id']) ? $param['id'] : 0;
  72. $detail = $this->model->where('id', $id)->find();
  73. $leader=Db::name("admin")->where("id",$detail["leader_id"])->value("nickname");
  74. if (!empty($detail)) {
  75. View::assign('detail', $detail);
  76. View::assign('leader', $leader);
  77. return view();
  78. }
  79. else{
  80. throw new \think\exception\HttpException(404, '找不到页面');
  81. }
  82. }
  83. }
  84. /**
  85. * 查看信息
  86. */
  87. public function read()
  88. {
  89. $param = get_params();
  90. $id = isset($param['id']) ? $param['id'] : 0;
  91. $detail = $this->model->where('id', $id)->find();
  92. $leader=Db::name("admin")->where("id",$detail["leader_id"])->value("nickname");
  93. if (!empty($detail)) {
  94. View::assign('leader', $leader);
  95. View::assign('detail', $detail);
  96. return view();
  97. }
  98. else{
  99. throw new \think\exception\HttpException(404, '找不到页面');
  100. }
  101. }
  102. }