MoneyLogLogic.php 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. <?php
  2. namespace app\admin\logic;
  3. use app\admin\model\dao\MoneyLog;
  4. use app\admin\model\dao\ScoreLog;
  5. use app\admin\model\dao\ShopOrder;
  6. use app\admin\model\dao\User;
  7. use app\common\model\UserMoneyModel;
  8. use think\facade\Cache;
  9. use think\facade\Db;
  10. class MoneyLogLogic
  11. {
  12. // 1.预约福袋 2.回收商品 3.预约福袋空盒退回 4.奖金流失 5.直推收益到奖金 6-奖金领取 7-团队收益到奖金 8-利润结算兑换 9-余额提现 10-提现失败退还 11-提现多次返回 12-提现手续费退回,13-提现失败退回 14-奖金领取退回 15-系统退回 16-平台充值 17-平台扣除
  13. private static $typeMap = [
  14. ['id' => 0, 'name' => '其他'],
  15. // ['id' => 1, 'name' => '预约福袋'],
  16. // ['id' => 2, 'name' => '回收商品'],
  17. // ['id' => 3, 'name' => '预约福袋空盒退回'],
  18. // ['id' => 4, 'name' => '奖金流失'],
  19. // ['id' => 5, 'name' => '直推收益到奖金'],
  20. // ['id' => 6, 'name' => '奖金领取'],
  21. // ['id' => 7, 'name' => '团队收益到奖金'],
  22. // ['id' => 8, 'name' => '利润结算兑换'],
  23. // ['id' => 9, 'name' => '余额提现'],
  24. ['id' => 10, 'name' => '提现失败退还'],
  25. ['id' => 11, 'name' => '提现多次返回'],
  26. ['id' => 12, 'name' => '提现手续费退回'],
  27. ['id' => 13, 'name' => '提现失败退回'],
  28. ['id' => 14, 'name' => '奖金领取退回'],
  29. ['id' => 15, 'name' => '系统退回'],
  30. ['id' => 16, 'name' => '平台充值'],
  31. ['id' => 17, 'name' => '平台扣除'],
  32. ];
  33. private static $stateMap = [
  34. ['id' => 1, 'name' => '增加'],
  35. ['id' => 2, 'name' => '减少']
  36. ];
  37. /**
  38. * @return array[]
  39. */
  40. public static function getStateMap(): array
  41. {
  42. return self::$stateMap;
  43. }
  44. /**
  45. * @return array[]
  46. */
  47. public static function getTypeMap(): array
  48. {
  49. return self::$typeMap;
  50. }
  51. public static function getMoneyLog($page, $limit, $where, $sort)
  52. {
  53. $model = new UserMoneyModel();
  54. $count = $model
  55. ->where($where)
  56. ->count();
  57. $type_conf = config('type.money');
  58. $list = $model
  59. ->where($where)
  60. ->withAttr('type', function ($value, $data) use ($type_conf) {
  61. return $type_conf[$value];
  62. })
  63. ->withAttr('money', function ($value, $data) {
  64. if ($data['state'] == 2)
  65. $value = '-' . $value;
  66. return $value;
  67. })
  68. ->page($page, $limit)
  69. ->order($sort)
  70. ->select();
  71. return [$count, $list];
  72. }
  73. }