SystemCleardata.php 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: sugar1569
  5. * Date: 2018/5/24
  6. * Time: 10:58
  7. */
  8. namespace app\admin\controller\system;
  9. use app\admin\controller\AuthController;
  10. use service\JsonService as Json;
  11. use think\db;
  12. use think\Config;
  13. /**
  14. * 清除默认数据理控制器
  15. * Class SystemclearData
  16. * @package app\admin\controller\system
  17. *
  18. */
  19. class SystemclearData extends AuthController
  20. {
  21. public function index(){
  22. return $this->fetch();
  23. }
  24. //清除用户数据
  25. public function userRelevantData(){
  26. self::clearData('user_recharge',1);
  27. self::clearData('user_address',1);
  28. self::clearData('user_bill',1);
  29. self::clearData('user_enter',1);
  30. self::clearData('user_extract',1);
  31. self::clearData('user_notice',1);
  32. self::clearData('user_notice_see',1);
  33. self::clearData('wechat_qrcode',1);
  34. self::clearData('wechat_message',1);
  35. self::clearData('store_visit',1);
  36. self::clearData('store_coupon_user',1);
  37. self::clearData('store_coupon_issue_user',1);
  38. self::clearData('store_bargain_user',1);
  39. self::clearData('store_bargain_user_help',1);
  40. self::clearData('store_product_reply',1);
  41. self::clearData('routine_qrcode',1);
  42. self::clearData('routine_form_id',1);
  43. $this->delDirAndFile('./public/uploads/store/comment');
  44. self::clearData('store_product_relation',1);
  45. return Json::successful('清除数据成功!');
  46. }
  47. //清除商城数据
  48. public function storeData(){
  49. self::clearData('store_coupon',1);
  50. self::clearData('store_coupon_issue',1);
  51. self::clearData('store_bargain',1);
  52. self::clearData('store_combination',1);
  53. self::clearData('store_combination_attr',1);
  54. self::clearData('store_combination_attr_result',1);
  55. self::clearData('store_combination_attr_value',1);
  56. self::clearData('store_product_attr',1);
  57. self::clearData('store_product_attr_result',1);
  58. self::clearData('store_product_attr_value',1);
  59. self::clearData('store_seckill',1);
  60. self::clearData('store_seckill_attr',1);
  61. self::clearData('store_seckill_attr_result',1);
  62. self::clearData('store_seckill_attr_value',1);
  63. self::clearData('store_product',1);
  64. self::clearData('store_visit',1);
  65. return Json::successful('清除数据成功!');
  66. }
  67. //清除产品分类
  68. public function categoryData(){
  69. self::clearData('store_category',1);
  70. return Json::successful('清除数据成功!');
  71. }
  72. //清除订单数据
  73. public function orderData(){
  74. self::clearData('store_order',1);
  75. self::clearData('store_order_cart_info',1);
  76. self::clearData('store_order_status',1);
  77. self::clearData('store_pink',1);
  78. self::clearData('store_cart',1);
  79. self::clearData('store_order_status',1);
  80. return Json::successful('清除数据成功!');
  81. }
  82. //清除客服数据
  83. public function kefuData(){
  84. self::clearData('store_service',1);
  85. $this->delDirAndFile('./public/uploads/store/service');
  86. self::clearData('store_service_log',1);
  87. return Json::successful('清除数据成功!');
  88. }
  89. //清除微信管理数据
  90. public function wechatData(){
  91. self::clearData('wechat_media',1);
  92. self::clearData('wechat_reply',1);
  93. self::clearData('cache',1);
  94. $this->delDirAndFile('./public/uploads/wechat');
  95. return Json::successful('清除数据成功!');
  96. }
  97. //清除所有附件
  98. public function uploadData(){
  99. self::clearData('system_attachment',1);
  100. self::clearData('system_attachment_category',1);
  101. $this->delDirAndFile('./public/uploads/attach/');
  102. $this->delDirAndFile('./public/uploads/editor/');
  103. return Json::successful('清除上传文件成功!');
  104. }
  105. //清除微信用户
  106. public function wechatuserData(){
  107. self::clearData('wechat_user',1);
  108. self::clearData('user',1);
  109. return Json::successful('清除数据成功!');
  110. }
  111. //清除内容分类
  112. public function articledata(){
  113. self::clearData('article_category',1);
  114. self::clearData('article',1);
  115. self::clearData('article_content',1);
  116. return Json::successful('清除数据成功!');
  117. }
  118. //清除系统记录
  119. public function systemdata(){
  120. self::clearData('system_notice_admin',1);
  121. self::clearData('system_log',1);
  122. return Json::successful('清除数据成功!');
  123. }
  124. //清除制定表数据
  125. public function clearData($table_name,$status){
  126. $table_name = Config::get('database')['prefix'].$table_name;
  127. if($status){
  128. @db::execute('TRUNCATE TABLE '.$table_name);
  129. }else{
  130. @db::execute('DELETE FROM'.$table_name);
  131. }
  132. }
  133. //递归删除文件
  134. function delDirAndFile($dirName,$subdir=true){
  135. if ($handle = @opendir("$dirName")){
  136. while(false !== ($item = readdir($handle))){
  137. if($item != "." && $item != ".."){
  138. if(is_dir("$dirName/$item"))
  139. $this->delDirAndFile("$dirName/$item",false);
  140. else
  141. @unlink("$dirName/$item");
  142. }
  143. }
  144. closedir($handle);
  145. if(!$subdir) @rmdir($dirName);
  146. }
  147. }
  148. }