ShopMoneyClass.php 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. <?php
  2. namespace bizGhs\shop\classes;
  3. use bizHd\base\classes\BaseClass;
  4. use common\components\dict;
  5. use common\components\util;
  6. class ShopMoneyClass extends BaseClass
  7. {
  8. public static $baseFile = '\bizGhs\shop\models\ShopMoney';
  9. //散客用现金充值 ssh 20250804
  10. public static function skRecharge($data, $main)
  11. {
  12. $amount = $data['amount'] ? floatval($data['amount']) : 0;
  13. $main->money = bcadd($main->money, $amount, 2);
  14. $main->save();
  15. $balance = $main->money ?? 0;
  16. $data['balance'] = $balance;
  17. $data['io'] = 1;
  18. $customName = $data['customName'] ?? '';
  19. $event = $customName . '现金充值自己的余额' . $amount . '元';
  20. $capitalType = dict::getDict('capitalType', 'xhRecharge', 'id');
  21. $data['capitalType'] = $capitalType;
  22. $data['event'] = $event;
  23. return self::addData($data);
  24. }
  25. //存入现金 ssh 20220811
  26. public static function inAmount($data, $main)
  27. {
  28. $amount = $data['amount'] ?? 0;
  29. $main->money = bcadd($main->money, $amount, 2);
  30. $main->save();
  31. $balance = $main->money ?? 0;
  32. $data['balance'] = $balance;
  33. $data['io'] = 1;
  34. $staffName = $data['staffName'] ?? '';
  35. $event = $staffName . '存入' . $amount . '元';
  36. $capitalType = dict::getDict('capitalType', 'inMoney', 'id');
  37. $data['capitalType'] = $capitalType;
  38. $data['event'] = $event;
  39. $respond = self::addData($data);
  40. return $respond;
  41. }
  42. //取出现金 ssh 20220811
  43. public static function outAmount($data, $main)
  44. {
  45. $amount = $data['amount'] ?? 0;
  46. if ($main->money < $amount) {
  47. util::fail('现金不足' . $amount . '元');
  48. }
  49. $main->money = bcsub($main->money, $amount, 2);
  50. $main->save();
  51. $balance = $main->money ?? 0;
  52. $data['balance'] = $balance;
  53. $data['io'] = 0;
  54. $staffName = $data['staffName'] ?? '';
  55. $event = $staffName . '取出' . $amount . '元';
  56. $capitalType = dict::getDict('capitalType', 'outMoney', 'id');
  57. $data['capitalType'] = $capitalType;
  58. $data['event'] = $event;
  59. $respond = self::addData($data);
  60. return $respond;
  61. }
  62. //零售花店给散客退款转现金 ssh 20250804
  63. public static function hdRefundSkOutAmount($data, $main)
  64. {
  65. $amount = $data['amount'] ?? 0;
  66. if ($main->money < $amount) {
  67. util::fail('现金不足' . $amount . '元');
  68. }
  69. $main->money = bcsub($main->money, $amount, 2);
  70. $main->save();
  71. $balance = $main->money ?? 0;
  72. $data['balance'] = $balance;
  73. $data['io'] = 0;
  74. $orderSn = $data['orderSn'] ?? '';
  75. $event = '客户的订单' . $orderSn . '申请退款,现金减少' . $amount . '元';
  76. $capitalType = dict::getDict('capitalType', 'outMoney', 'id');
  77. $data['capitalType'] = $capitalType;
  78. $data['event'] = $event;
  79. $respond = self::addData($data);
  80. return $respond;
  81. }
  82. //供货商给花店发起退款 ssh 20220923
  83. public static function ghsRefundHdOutAmount($data, $main)
  84. {
  85. $amount = $data['amount'] ?? 0;
  86. if ($main->money < $amount) {
  87. util::fail('现金不足' . $amount . '元');
  88. }
  89. $main->money = bcsub($main->money, $amount, 2);
  90. $main->save();
  91. $balance = $main->money ?? 0;
  92. $data['balance'] = $balance;
  93. $data['io'] = 0;
  94. $orderSn = $data['orderSn'] ?? '';
  95. $event = '客户的订单' . $orderSn . '申请退款,现金减少' . $amount . '元';
  96. $capitalType = dict::getDict('capitalType', 'outMoney', 'id');
  97. $data['capitalType'] = $capitalType;
  98. $data['event'] = $event;
  99. $respond = self::addData($data);
  100. return $respond;
  101. }
  102. public static function addData($data)
  103. {
  104. $result = self::add($data, true);
  105. $id = $result->id ?? 0;
  106. $amount = $data['amount'] ?? 0;
  107. $balance = $data['balance'] ?? 0;
  108. $mainId = $data['mainId'] ?? 0;
  109. $io = $data['io'] ?? 0;
  110. $event = $data['event'] ?? '';
  111. $remark = $data['remark'] ?? '';
  112. $capitalType = $data['capitalType'] ?? 0;
  113. $shopId = $data['shopId'] ?? 0;
  114. $ptStyle = dict::getDict('ptStyle', 'ghs');
  115. if (!empty($shopId)) {
  116. $shop = ShopClass::getById($shopId, true);
  117. $ptStyle = $shop->ptStyle ?? 1;
  118. }
  119. $change = [
  120. 'relateId' => $id,
  121. 'amount' => $amount,
  122. 'balance' => $balance,
  123. 'io' => $io,
  124. 'mainId' => $mainId,
  125. 'capitalType' => $capitalType,
  126. 'ptStyle' => $ptStyle,
  127. 'event' => $event,
  128. 'remark' => $remark,
  129. ];
  130. ShopMoneyChangeClass::addData($change);
  131. return $result;
  132. }
  133. }