Person.php 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162
  1. <?php
  2. namespace app\admin\controller;
  3. use app\admin\common\AdminController;
  4. use app\common\model\Person as PsModel;
  5. /**
  6. * Description of Person
  7. *
  8. * @author sgq
  9. */
  10. class Person extends AdminController {
  11. /**
  12. * @@auth {{/person/gotoPersonPage}}
  13. * @return type
  14. */
  15. public function index() {
  16. return view("");
  17. }
  18. public function list() {
  19. $where = [];
  20. $params = $this->request;
  21. $order = trim($params["order"]) ?: "desc";
  22. $offset = trim($params["offset"]) ?: 0;
  23. $limit = trim($params["limit"]) ?: 10;
  24. $where[] = ["type", "=", $this->user["type"]];
  25. if (\StrUtil::isNotEmpAndNull($params["username"])) {
  26. $where[] = ["username", "like", "%" . $params["username"] . "%"];
  27. }
  28. if (\StrUtil::isNotEmpAndNull($params["name"])) {
  29. $where[] = ["name", "like", "%" . $params["name"] . "%"];
  30. }
  31. if ($params["sex"]) {
  32. $where[] = ["sex", "=", $params["sex"]];
  33. }
  34. if (\StrUtil::isNotEmpAndNull($params["idCard"])) {
  35. $where[] = ["idCard", "like", "%" . $params["idCard"] . "%"];
  36. }
  37. if (\StrUtil::isNotEmpAndNull($params["phone"])) {
  38. $where[] = ["phone", "like", "%" . $params["phone"] . "%"];
  39. }
  40. $count = PsModel::where($where)->count();
  41. $rows = PsModel::where($where)->limit($offset, $limit)->order("createTime " . $order)->select()->toArray();
  42. $res = ["total" => $count, "rows" => $rows];
  43. return json($res);
  44. }
  45. /**
  46. * @@auth {{/person/gotoPersonDetailPage}}
  47. * @return type
  48. */
  49. public function detail() {
  50. $id = \StrUtil::getRequestDecodeParam($this->request, "id");
  51. $person = PsModel::find($id);
  52. if ($person["sex"]) {
  53. $person["sexName"] = $person["sex"] == 1 ? "男" : "女";
  54. }
  55. if ($person["active"]) {
  56. $person["activeName"] = $person["active"] == 1 ? "账号有效" : "冻结/拉黑";
  57. }
  58. return view("", ["person" => $person]);
  59. }
  60. /**
  61. * @auth {{/person/setActive}}
  62. * @return type
  63. */
  64. public function setActive() {
  65. if ($this->request->isAjax()) {
  66. $response = new \stdClass();
  67. $response->code = 500;
  68. $id = \StrUtil::getRequestDecodeParam($this->request, "id");
  69. $active = \StrUtil::getRequestDecodeParam($this->request, "active");
  70. $activeMsg = \StrUtil::getRequestDecodeParam($this->request, "activeMsg");
  71. //校验 ID 是否为空
  72. if (\StrUtil::isEmpOrNull($id)) {
  73. $response->msg = "ID不能为空!";
  74. return json($response);
  75. }
  76. //校验 是否为账号有效 或者 账号拉黑/冻结
  77. if (!$active) {
  78. $response->msg = "请选择账号状态!";
  79. return json($response);
  80. }
  81. if (!in_array($active, [1, 2])) {
  82. $response->msg = "账号状态有误!";
  83. return json($response);
  84. }
  85. //如果审核状态为拉黑/冻结 需要填写冻结原因
  86. if ($active == 2) {
  87. if (\StrUtil::isEmpOrNull($activeMsg)) {
  88. $response->msg = "请填写冻结/拉黑原因!!";
  89. return json($response);
  90. }
  91. if (mb_strlen($activeMsg) > 100) {
  92. $response->msg = "冻结/拉黑原因最多100个字符!";
  93. return json($response);
  94. }
  95. }
  96. $old = PsModel::find($id);
  97. if (!$old) {
  98. $response->msg = "用户信息不存在!";
  99. return json($response);
  100. }
  101. try {
  102. $data["id"] = $id;
  103. $data["active"] = $active;
  104. $data["activeMsg"] = $activeMsg;
  105. $data["updateUser"] = $this->user["uid"];
  106. $data["updateTime"] = date("Y-m-d H:i:s");
  107. PsModel::update($data);
  108. $response->msg = "操作成功!";
  109. $response->code = 200;
  110. return json($response);
  111. } catch (\Exception $e) {
  112. $response->msg = $e->getMessage();
  113. return json($response);
  114. }
  115. }
  116. $id = \StrUtil::getRequestDecodeParam($this->request, "id");
  117. $person = PsModel::find($id);
  118. return view("", ["person" => $person]);
  119. }
  120. /**
  121. * @auth {{/person/resetPassword}}
  122. * @return type
  123. */
  124. public function resetPassword() {
  125. $response = new \stdClass();
  126. $response->code = 500;
  127. $defaultPassword = "JJrc@123";
  128. $id = \StrUtil::getRequestDecodeParam($this->request, "id");
  129. if (\StrUtil::isEmpOrNull($id)) {
  130. $response->msg = "ID不能为空!";
  131. return json($response);
  132. }
  133. $person = PsModel::find($id);
  134. if (!$person) {
  135. $response->msg = "数据不存在!";
  136. return json($response);
  137. }
  138. try {
  139. $data["id"] = $id;
  140. $data["updateUser"] = $this->user["uid"];
  141. $data["updateTime"] = date("Y-m-d H:i:s");
  142. $data["password"] = md5($defaultPassword);
  143. PsModel::update($data);
  144. $response->msg = "操作成功!";
  145. $response->code = 200;
  146. return json($response);
  147. } catch (\Exception $e) {
  148. $response->msg = $e->getMessage();
  149. return json($response);
  150. }
  151. }
  152. }