CLEANACTIVE.sql 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156
  1. DROP PROCEDURE IF EXISTS `CLEANACTIVE`;
  2. delimiter ;;
  3. CREATE PROCEDURE `CLEANACTIVE`(IN `UNUMBER` VARCHAR(32))
  4. BEGIN
  5. DECLARE t_error INTEGER DEFAULT 0;
  6. DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET t_error=1;
  7. START TRANSACTION;
  8. -- 备份用户的余额 奖金 兑换积分 复消积分
  9. INSERT INTO `AR_ACTIVED_ACCOUNT_BACK` ( `USER_ID`, `USER_NAME`, `USER_CASH`, `EXCHANGE_POINTS`, `EXCHANGE_POINTS_TOTAL`, `RECONSUME_POINTS`, `RECONSUME_POINTS_TOTAL`, `USER_BONUS`, `RECONSUME_POINTS_EXPIRED` ) SELECT
  10. `AR_USER_BONUS`.`USER_ID`,
  11. `AR_USER`.`USER_NAME`,
  12. `AR_USER_WALLET`.`CASH`,
  13. `AR_USER_BONUS`.`EXCHANGE_POINTS`,
  14. `AR_USER_BONUS`.`EXCHANGE_POINTS_TOTAL`,
  15. `AR_USER_BONUS`.`RECONSUME_POINTS`,
  16. `AR_USER_BONUS`.`RECONSUME_POINTS_TOTAL`,
  17. `AR_USER_BONUS`.`BONUS`,
  18. `AR_USER_BONUS`.`RECONSUME_POINTS_EXPIRED`
  19. FROM
  20. `AR_USER_BONUS`
  21. INNER JOIN `AR_USER` ON `AR_USER`.`ID` = `AR_USER_BONUS`.`USER_ID`
  22. LEFT JOIN `AR_USER_WALLET` ON `AR_USER_WALLET`.`USER_ID` = `AR_USER_BONUS`.`USER_ID`
  23. WHERE
  24. `AR_USER`.`USER_NAME` = `UNUMBER`;
  25. -- 删除用户奖金
  26. DELETE `UB` FROM `AR_USER_BONUS` `UB` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`UB`.`USER_ID`
  27. WHERE `U`.`USER_NAME` = `UNUMBER`;
  28. -- 清除用户的cash余额
  29. UPDATE `AR_USER_WALLET` INNER JOIN `AR_USER` ON `AR_USER`.`ID`=`AR_USER_WALLET`.`USER_ID` SET `AR_USER_WALLET`.`CASH`=0 WHERE `AR_USER`.`USER_NAME` = `UNUMBER`;
  30. -- 删除用户累计业绩
  31. DELETE `UP` FROM `AR_USER_PERF` `UP` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`UP`.`USER_ID`
  32. WHERE `U`.`USER_NAME` = `UNUMBER`;
  33. -- 删除用户总奖金发送记录
  34. DELETE `CB` FROM `AR_CALC_BONUS` `CB` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`CB`.`USER_ID`
  35. WHERE `U`.`USER_NAME` = `UNUMBER`;
  36. -- 删除用户各个奖金发送记录
  37. DELETE `CBBD` FROM `AR_CALC_BONUS_BD` `CBBD` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`CBBD`.`USER_ID`
  38. WHERE `U`.`USER_NAME` = `UNUMBER`;
  39. DELETE `CBBS` FROM `AR_CALC_BONUS_BS` `CBBS` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`CBBS`.`USER_ID`
  40. WHERE `U`.`USER_NAME` = `UNUMBER`;
  41. DELETE `CBBT` FROM `AR_CALC_BONUS_BT` `CBBT` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`CBBT`.`USER_ID`
  42. WHERE `U`.`USER_NAME` = `UNUMBER`;
  43. DELETE `CBCF` FROM `AR_CALC_BONUS_CF` `CBCF` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`CBCF`.`USER_ID`
  44. WHERE `U`.`USER_NAME` = `UNUMBER`;
  45. DELETE `CBFL` FROM `AR_CALC_BONUS_FL` `CBFL` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`CBFL`.`USER_ID`
  46. WHERE `U`.`USER_NAME` = `UNUMBER`;
  47. DELETE `CBFW` FROM `AR_CALC_BONUS_FW` `CBFW` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`CBFW`.`USER_ID`
  48. WHERE `U`.`USER_NAME` = `UNUMBER`;
  49. DELETE `CBFX` FROM `AR_CALC_BONUS_FX` `CBFX` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`CBFX`.`USER_ID`
  50. WHERE `U`.`USER_NAME` = `UNUMBER`;
  51. DELETE `CBGL` FROM `AR_CALC_BONUS_GL` `CBGL` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`CBGL`.`USER_ID`
  52. WHERE `U`.`USER_NAME` = `UNUMBER`;
  53. DELETE `CBGX` FROM `AR_CALC_BONUS_GX` `CBGX` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`CBGX`.`USER_ID`
  54. WHERE `U`.`USER_NAME` = `UNUMBER`;
  55. DELETE `CBLS` FROM `AR_CALC_BONUS_LS` `CBLS` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`CBLS`.`USER_ID`
  56. WHERE `U`.`USER_NAME` = `UNUMBER`;
  57. DELETE `CBLX` FROM `AR_CALC_BONUS_LX` `CBLX` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`CBLX`.`USER_ID`
  58. WHERE `U`.`USER_NAME` = `UNUMBER`;
  59. DELETE `CBQY` FROM `AR_CALC_BONUS_QY` `CBQY` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`CBQY`.`USER_ID`
  60. WHERE `U`.`USER_NAME` = `UNUMBER`;
  61. DELETE `CBST` FROM `AR_CALC_BONUS_STANDARD` `CBST` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`CBST`.`USER_ID`
  62. WHERE `U`.`USER_NAME` = `UNUMBER`;
  63. DELETE `CBTG` FROM `AR_CALC_BONUS_TG` `CBTG` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`CBTG`.`USER_ID`
  64. WHERE `U`.`USER_NAME` = `UNUMBER`;
  65. DELETE `CBVIP` FROM `AR_CALC_BONUS_VIP` `CBVIP` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`CBVIP`.`USER_ID`
  66. WHERE `U`.`USER_NAME` = `UNUMBER`;
  67. DELETE `CBXF` FROM `AR_CALC_BONUS_XF` `CBXF` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`CBXF`.`USER_ID`
  68. WHERE `U`.`USER_NAME` = `UNUMBER`;
  69. DELETE `CBYC` FROM `AR_CALC_BONUS_YC` `CBYC` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`CBYC`.`USER_ID`
  70. WHERE `U`.`USER_NAME` = `UNUMBER`;
  71. DELETE `CBYJ` FROM `AR_CALC_BONUS_YJ` `CBYJ` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`CBYJ`.`USER_ID`
  72. WHERE `U`.`USER_NAME` = `UNUMBER`;
  73. DELETE `CMBU` FROM `AR_CALC_MONTH_BONUS_USER` `CMBU` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`CMBU`.`USER_ID`
  74. WHERE `U`.`USER_NAME` = `UNUMBER`;
  75. DELETE `FB` FROM `AR_FLOW_BONUS` `FB` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`FB`.`USER_ID`
  76. WHERE `U`.`USER_NAME` = `UNUMBER`;
  77. DELETE `FC` FROM `AR_FLOW_CF` `FC` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`FC`.`USER_ID`
  78. WHERE `U`.`USER_NAME` = `UNUMBER`;
  79. DELETE `FDZ` FROM `AR_FLOW_DEDUCT_ZR` `FDZ` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`FDZ`.`USER_ID`
  80. WHERE `U`.`USER_NAME` = `UNUMBER`;
  81. DELETE `FEP` FROM `AR_FLOW_EXCHANGE_POINTS` `FEP` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`FEP`.`USER_ID`
  82. WHERE `U`.`USER_NAME` = `UNUMBER`;
  83. DELETE `FLX` FROM `AR_FLOW_LX` `FLX` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`FLX`.`USER_ID`
  84. WHERE `U`.`USER_NAME` = `UNUMBER`;
  85. DELETE `FRP` FROM `AR_FLOW_RECONSUME_POINTS` `FRP` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`FRP`.`USER_ID`
  86. WHERE `U`.`USER_NAME` = `UNUMBER`;
  87. DELETE `FW` FROM `AR_FLOW_WALLET` `FW` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`FW`.`USER_ID`
  88. WHERE `U`.`USER_NAME` = `UNUMBER`;
  89. DELETE `HB` FROM `AR_HISTORY_BONUS` `HB` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`HB`.`USER_ID`
  90. WHERE `U`.`USER_NAME` = `UNUMBER`;
  91. DELETE `UPEP` FROM `AR_USER_PERIOD_EXCHANGE_POINTS` `UPEP` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`UPEP`.`USER_ID`
  92. WHERE `U`.`USER_NAME` = `UNUMBER`;
  93. DELETE `UPP` FROM `AR_USER_PERIOD_POINTS` `UPP` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`UPP`.`USER_ID`
  94. WHERE `U`.`USER_NAME` = `UNUMBER`;
  95. DELETE `AW` FROM `AR_WITHDRAW` `AW` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`AW`.`USER_ID`
  96. WHERE `U`.`USER_NAME` = `UNUMBER`;
  97. DELETE `AT` FROM `AR_TRANSFER` `AT` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`AT`.`OUT_UID`
  98. WHERE `U`.`USER_NAME` = `UNUMBER`;
  99. DELETE `ABA` FROM `AR_BALANCE_AUDIT` `ABA` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`ABA`.`USER_ID`
  100. WHERE `U`.`USER_NAME` = `UNUMBER`;
  101. DELETE `R` FROM `AR_RECHARGE` `R` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`R`.`USER_ID`
  102. WHERE `U`.`USER_NAME` = `UNUMBER`;
  103. DELETE `ASM` FROM `AR_SCORE_MONTH` `ASM` INNER JOIN `AR_USER` `U` ON `U`.`ID`=`ASM`.`USER_ID`
  104. WHERE `U`.`USER_NAME` = `UNUMBER`;
  105. IF t_error = 1 THEN
  106. ROLLBACK;
  107. ELSE
  108. COMMIT;
  109. END IF;
  110. select t_error; -- 返回标识位的结果集
  111. END
  112. ;;