Usermanage.php 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369
  1. <?php
  2. /**
  3. *
  4. * User: anyluck
  5. * Date: 2020/6/2
  6. * Time: 17:31
  7. */
  8. namespace app\admin\controller;
  9. use app\common\controller\Backend;
  10. use app\common\controller\Message;
  11. use app\common\controller\Orde;
  12. use app\common\model\UserLevel;
  13. use think\facade\Db;
  14. use think\facade\Request;
  15. use think\facade\Session;
  16. use think\facade\View;
  17. use app\common\model\User;
  18. class Usermanage extends Backend
  19. {
  20. // 用户管理
  21. // 用户列表
  22. public function index()
  23. {
  24. if (Request::isPost()) {
  25. $keys = Request::post('keys', '', 'trim');
  26. $page = Request::post('page') ? Request::post('page') : 1;
  27. $limit=input("limit")?:10;
  28. $where=[];
  29. $where[]=["admin","<>",1];
  30. // var_dump($where);die();
  31. $list = Db::name('user')
  32. ->where($where)
  33. ->where('mail|phone|name','like',"%".$keys."%")
  34. ->order('id desc')
  35. ->paginate(['list_rows' =>$limit, 'page' => $page])
  36. ->toArray();
  37. foreach ($list['data'] as $k=>$v){
  38. if ($v['update_time']){
  39. $list['data'][$k]['update_time'] = date('Y-m-d H:i',$v['update_time']);
  40. }
  41. if ($v["add_time"]){
  42. $list['data'][$k]['add_time'] = date('Y-m-d H:i',$v['add_time']);
  43. }
  44. }
  45. return $result = ['code' => 0, 'msg' => lang('get info success'), 'data' => $list['data'], 'count' => $list['total']];
  46. }
  47. $vip=UserLevel::select();
  48. View::assign("vip",$vip);
  49. return View::fetch();
  50. }
  51. // 删除账号
  52. public function delete_user()
  53. {
  54. $id=input("id");
  55. $where["id"]=$id;
  56. User::where($where)->delete();
  57. json_result(200,"删除成功");
  58. }
  59. // 设置等级
  60. public function update_leve()
  61. {
  62. $id=input("id");
  63. $level=input("level");
  64. User::update(["vip_level"=>$level],["id"=>$id]);
  65. json_result(200,"设置成功");
  66. }
  67. // 对账号的金额进行操作
  68. public function update_user_money()
  69. {
  70. $id=input("id");
  71. $field=input("field");
  72. $value=input("value");
  73. $where["id"]=$id;
  74. $user=User::where($where)->find();
  75. $update[$field]=$value;
  76. User::update($update,$where);
  77. $status=0;
  78. $name="系统充值成功";
  79. if ($value<$user[$field]){// 查看账号增加还是减少
  80. $name="系统扣除";
  81. $status=1;
  82. $moneys= $user[$field]-$value;
  83. $content="系统已为您充值$moneys 通证";
  84. }else{
  85. $moneys=$value- $user[$field];
  86. $content="系统已为您充值$moneys 保证金";
  87. }
  88. Message::add_message($id,1,$name,$content);
  89. // 添加记录
  90. switch ($field){
  91. case "money"://通证余额
  92. Orde::Finance($id,$name."通证",$moneys,$status,2);
  93. break;
  94. case "ensure_money":// 保证金
  95. Orde::bond_finance($id,$name."保证金",$moneys,$status);
  96. break;
  97. case "push_money":// 可售额度
  98. // Orde::bond_finance($id,$name."可售额度",$moneys,$status);
  99. break;
  100. // case "pool_money":// 矿池矿金
  101. // Orde::bond_finance($id,$name,$moneys,$status);
  102. // break;
  103. }
  104. }
  105. // 密码重置
  106. public function update_pwd()
  107. {
  108. $id=input("id");
  109. $pwd=input("pwd");
  110. $data["pwd"] = password_hash($pwd, PASSWORD_DEFAULT);;
  111. User::update($data,["id"=>$id]);
  112. json_result(200,"重置成功");
  113. }
  114. // 用户收款信息
  115. public function usermessage()
  116. {
  117. if (Request::isPost()) {
  118. $data = Request::post();
  119. $adminid=input("user_id");
  120. $where["user_id"]=$adminid;
  121. \app\common\model\UserMessage::update($data,$where);
  122. json_result(200, "修改成功", $data);
  123. }
  124. $adminid=input("user_id");
  125. $where["user_id"]=$adminid;
  126. $code=\app\common\model\UserMessage::where($where)->find();
  127. if (!$code){
  128. \app\common\model\UserMessage::create($where);
  129. $code=\app\common\model\UserMessage::where($where)->find();
  130. }
  131. View::assign("user",$code);
  132. return View::fetch();
  133. }
  134. // 封号
  135. public function fenhao()
  136. {
  137. $id=input("id");
  138. $user=\app\common\model\User::where(["id"=>$id])->field("status")->find();
  139. if ($user->status==1){
  140. $update["status"]=0;
  141. }else{
  142. $update["status"]=1;
  143. }
  144. \app\common\model\User::update($update,["id"=>$id]);
  145. json_result(200,"操作成功");
  146. }
  147. // 是否为代理商户
  148. public function is_admin()
  149. {
  150. $id=input("id");
  151. $where["id"]=$id;
  152. $user=User::where($where)->find();
  153. if ($user->is_admin==0){
  154. $update["is_admin"]=1;
  155. }else{
  156. $update["is_admin"]=0;
  157. }
  158. User::update($update,$where);
  159. json_result(200,"操作成功");
  160. }
  161. //用户充值
  162. // public function chongzhi()
  163. // {
  164. //
  165. // }
  166. // 用户通证记录
  167. public function tongxingzheng()
  168. {
  169. if (Request::isPost()) {
  170. $name = input("name");
  171. $page = input("page") ?: 1;
  172. $limit = input("limit") ?: 10;
  173. $where = [];
  174. $user_id=input("user_id");
  175. // $where["user_id"]=$user_id;
  176. $where["daili"]=0;
  177. $list = \app\common\model\Finance::where($where)->order("id desc")->paginate(["list_row" => $limit, "page" => $page])->each(function ($item) {
  178. $user =User::where(["id" => $item["user_id"]])->field("name")->find();
  179. $item["user_name"] = $user->name;
  180. $item["add_time"]=date("Y-m-d H:i:s",$item["add_time"]);
  181. return $item;
  182. })->toArray();
  183. return $result = ['code' => 0, 'msg' => lang('get info success'), 'data' => $list['data'] ?: [], 'count' => $list['total'] ?: 0];
  184. }
  185. return View::fetch();
  186. }
  187. //设置会员等级
  188. public function update_level()
  189. {
  190. if (Request::isPost()) {
  191. $name = input("name");
  192. $page = input("page") ?: 1;
  193. $limit = input("limit") ?: 10;
  194. $where = [];
  195. $list = UserLevel::where($where)->order("id desc")->paginate(["list_row" => $limit, "page" => $page])->each(function ($item) {
  196. return $item;
  197. })->toArray();
  198. return $result = ['code' => 0, 'msg' => lang('get info success'), 'data' => $list['data'] ?: [], 'count' => $list['total'] ?: 0];
  199. }
  200. return View::fetch();
  201. }
  202. // 删除等级
  203. public function del_user_level()
  204. {
  205. $id=input("id");
  206. $user_level=UserLevel::where(["id"=>$id])->find();
  207. // 查看是否有会员有该等级
  208. $user=User::where(["vip_level"=>$user_level->level])->count();
  209. if ($user){
  210. json_result(400,"当前等级下有会员不能删除");
  211. }
  212. UserLevel::where(["id"=>$id])->delete();
  213. json_result(200,"删除成功");
  214. }
  215. // 添加等级
  216. public function add_user_level()
  217. {
  218. $data=Request::post();
  219. $user_level=UserLevel::where(["level"=>$data["level"]])->find();
  220. if ($user_level){
  221. json_result(400,"当前等级已经存在,请重新添加一个吧");
  222. }
  223. UserLevel::create($data);
  224. json_result(200,"添加成功",$data);
  225. }
  226. // 更新
  227. public function update_user_level()
  228. {
  229. $id=input("id");
  230. $filed=input("field");
  231. $value=input("value");
  232. if ($filed=="level"){
  233. $userlevel=UserLevel::where(["level"=>$filed])->find();
  234. if ($userlevel){
  235. json_result(400,"当前等级已经存在");
  236. }
  237. }
  238. UserLevel::where(["id"=>$id])->update([$filed=>$value]);
  239. json_result(200,"设置成功");
  240. }
  241. // 通证详情
  242. public function certificateshow()
  243. {
  244. if (Request::isPost()) {
  245. $name = input("name");
  246. $page = input("page") ?: 1;
  247. $limit = input("limit") ?: 10;
  248. $where = [];
  249. $user_id=input("user_id");
  250. $where["user_id"]=$user_id;
  251. // $where["daili"]=0;
  252. $list = \app\common\model\Finance::where($where)->order("id desc")->paginate(["list_row" => $limit, "page" => $page])->each(function ($item) {
  253. $user =User::where(["id" => $item["user_id"]])->field("name")->find();
  254. $item["user_name"] = $user->name;
  255. $item["add_time"]=date("Y-m-d H:i:s",$item["add_time"]);
  256. return $item;
  257. })->toArray();
  258. return $result = ['code' => 0, 'msg' => lang('get info success'), 'data' => $list['data'] ?: [], 'count' => $list['total'] ?: 0];
  259. }
  260. $user_id=input("user_id");
  261. View::assign("user_id",$user_id);
  262. return View::fetch();
  263. }
  264. /**
  265. * 持有订单列表
  266. */
  267. public function push()
  268. {
  269. if (Request::isPost()) {
  270. $name = input("name");
  271. $page = input("page") ?: 1;
  272. $limit = input("limit") ?: 10;
  273. $where = [];
  274. $user_id=input("user_id");
  275. $where["buy_user|push_user"]=$user_id;
  276. // $where[]=["status",">",0];
  277. // $where[]=["is_admin","=",0];
  278. $list = \app\common\model\Order::where($where)->order("status asc,id desc")->paginate(["list_row" => $limit, "page" => $page])->each(function ($item) use ($user_id) {
  279. $user = \app\common\model\User::where(["id" => $item["buy_user"]])->field("name")->find();
  280. $item["user_name"] = $user->name;
  281. $item["add_time"]=date("Y-m-d H:i:s",$item["add_time"]);
  282. if ($item["stat_time"]){
  283. $item["stat_time"]=date("Y-m-d H:i:s",$item["stat_time"]);
  284. }
  285. if ($item["end_time"]){
  286. $item["end_time"]=date("Y-m-d H:i:s",$item["end_time"]);
  287. }
  288. switch ($item["status"]){
  289. case 0:$item["status"]="未匹配";break;
  290. case 1:$item["status"]="已匹配或待支付";break;
  291. case 2:$item["status"]="已上传数据";break;
  292. case 3:$item["status"]="已完成";break;
  293. case 4:$item["status"]="已撤销";break;
  294. case 5:$item["status"]="交易失败";break;
  295. }
  296. $item["biaoshu"]="";
  297. if ($user_id==$item["buy_user"]){
  298. $item["biaoshu"]="购买";
  299. }elseif($user_id==$item["push_user"]){
  300. $item["biaoshu"]="卖出";
  301. }
  302. if ($item["image"]){
  303. $item["image"]=explode(",",$item["image"]);
  304. }
  305. return $item;
  306. })->toArray();
  307. return $result = ['code' => 0, 'msg' => lang('get info success'), 'data' => $list['data'] ?: [], 'count' => $list['total'] ?: 0];
  308. }
  309. $user_id=input("user_id");
  310. View::assign("user_id",$user_id);
  311. return View::fetch();
  312. }
  313. }