Member.php 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176
  1. <?php
  2. namespace app\admin\controller;
  3. use think\Validate;
  4. use think\Lang;
  5. class Member extends AdminControl
  6. {
  7. public function _initialize()
  8. {
  9. parent::_initialize();
  10. Lang::load(APP_PATH . 'admin/lang/' . config('default_lang') . '/member.lang.php');
  11. }
  12. /**
  13. * 用户列表
  14. * @return mixed
  15. */
  16. public function index()
  17. {
  18. $model_member = Model('member');
  19. $title = input('post.title');
  20. $time = input('post.timeRang');
  21. if(!empty($time)){
  22. $gap = explode(' - ', $time);
  23. $begin = strtotime($gap[0]);
  24. $end = strtotime($gap[1]);
  25. }
  26. $condition = array();
  27. if($title){
  28. $condition['member_contacts|member_mobile|member_name'] = $title;
  29. }
  30. if($time && $begin && $end){
  31. $condition['member_add_time'] = array('between', array($begin, $end));
  32. }
  33. $member_list = $model_member->getMemberList($condition, '*', 10);
  34. $allpower = $this->qxhans();
  35. $this->assign('allpower',$allpower);
  36. $this->assign('member_list', $member_list);
  37. $this->assign('show_page', $model_member->page_info->render());
  38. $this->setAdminCurItem('index');
  39. return $this->fetch();
  40. }
  41. /**
  42. * 添加用户
  43. * @return mixed
  44. */
  45. public function add()
  46. {
  47. if (request()->isPost()) {
  48. $model_member = Model('member');
  49. //判断用户名是否存在
  50. $usetime = input('post.member_usetime');
  51. $validitytime = $model_member->validity($usetime);
  52. $data = array(
  53. 'member_name' => input('post.member_name'),
  54. 'member_url' =>input('post.member_url'),
  55. 'member_mobile' => input('post.member_mobile'),
  56. 'member_contacts' =>input('post.member_contacts'),
  57. 'member_mailbox' => input('post.member_mailbox'),
  58. 'member_usetime' => $usetime,
  59. 'member_validitytime' => $validitytime,
  60. 'member_status' => input('post.member_status') ? input('post.member_status') : 1,
  61. 'member_add_time' => TIMESTAMP
  62. );
  63. //添加到数据库
  64. $result = $model_member->addMember($data);
  65. if ($result) {
  66. $cjglz =array('wlcome','wlcome.index','config','config.index','config.add','config.edit','config.del','admin','admin.index','admin.add','admin.edit','admin.del','admingroup','admingroup.index','admingroup.add','admingroup.edit','admingroup.del','product','product.index','product.add','product.edit','product.del','news','news.index','news.add','news.edit','news.del','message','message.index','message.reply','message.del','service','service.index','jobcv','jobcv.index','Visitkf','Visitkf.index','glservice','glservice.index');
  67. $limit_str = '';
  68. if (is_array($cjglz)) {
  69. $limit_str = implode('|', $cjglz);
  70. }
  71. $sgda = array(
  72. 'group_name' => '超级管理员',
  73. 'group_limits' => ds_encrypt($limit_str, MD5_KEY . md5('超级管理员')),
  74. 'lang' => 'zh-cn',
  75. 'suosgs' => $result,
  76. 'addtime' => TIMESTAMP
  77. );
  78. $groupid = Model('Admingroup')->addAdminGroup($sgda);
  79. if($groupid){
  80. //创建一个客服帐号
  81. $erda = array(
  82. 'service_name' => input('post.member_mailbox'),
  83. 'service_password' => md5('123456'),
  84. 'service_group_id' => $groupid,
  85. 'service_is_super' => 1,
  86. 'service_pid' => $result,
  87. 'service_add_time' => TIMESTAMP
  88. );
  89. Model('service')->addservice($erda);
  90. dsLayerOpenSuccess(lang('member_add_succ'));
  91. }
  92. } else {
  93. $this->error(lang('member_add_fail'));
  94. }
  95. } else {
  96. $member_array = array(
  97. 'member_status' => 0,
  98. 'add' => 1,
  99. );
  100. $this->assign('member', $member_array);
  101. $this->setAdminCurItem('add');
  102. return $this->fetch('form');
  103. }
  104. }
  105. public function edit()
  106. {
  107. $member_id = input('param.member_id');
  108. if (empty($member_id)) {
  109. $this->error(lang('param_error'));
  110. }
  111. $model_member = Model('member');
  112. $usetime = input('post.member_usetime');
  113. $validitytime = $model_member->validity($usetime);
  114. if (!request()->isPost()) {
  115. $condition['member_id'] = $member_id;
  116. $member_array = $model_member->getMemberInfo($condition);
  117. $member_array['add'] = 0;
  118. $this->assign('member', $member_array);
  119. $this->setAdminCurItem('edit');
  120. return $this->fetch('form');
  121. } else {
  122. $data = array(
  123. 'member_name' => input('post.member_name'),
  124. 'member_url' => input('post.member_url'),
  125. 'member_mobile' => input('post.member_mobile'),
  126. 'member_contacts' => input('post.member_contacts'),
  127. 'member_mailbox' => input('post.member_mailbox'),
  128. 'member_usetime' => $usetime,
  129. 'member_validitytime' => $validitytime,
  130. 'member_status' => input('post.member_status'),
  131. );
  132. //验证数据 END
  133. $result = $model_member->editMember(array('member_id' => intval($member_id)), $data);
  134. if ($result) {
  135. dsLayerOpenSuccess(lang('member_edit_succ'));
  136. } else {
  137. $this->error(lang('member_edit_fail'));
  138. }
  139. }
  140. }
  141. public function del()
  142. {
  143. $member_id = input('param.member_id');
  144. if (empty($member_id)) {
  145. $this->error(lang('param_error'));
  146. }
  147. $result = db('member')->delete($member_id);
  148. if ($result) {
  149. ds_json_encode(10000, lang('member_del_succ'));
  150. } else {
  151. ds_json_encode(10001, lang('member_del_fail'));
  152. }
  153. }
  154. protected function getAdminItemList()
  155. {
  156. $menu_array = array(
  157. array(
  158. 'name' => 'index', 'text' => lang('ds_manage'), 'url' => url('Member/index')
  159. ), array(
  160. 'name' => 'add', 'text' => lang('ds_add'), 'url' => "javascript:dsLayerOpen('".url('Member/add')."','".lang('ds_add')."')"
  161. ),
  162. );
  163. return $menu_array;
  164. }
  165. }