CustomService.php 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. <?php
  2. namespace bizGhs\custom\services;
  3. use biz\ghs\classes\GhsClass;
  4. use biz\sj\classes\SjClass;
  5. use bizGhs\order\classes\OrderClearClass;
  6. use bizHd\base\services\BaseService;
  7. use bizGhs\custom\classes\CustomClass;
  8. use common\components\util;
  9. class CustomService extends BaseService
  10. {
  11. public static $baseFile = '\bizGhs\custom\classes\CustomClass';
  12. //充值和结账,有多个地方要同步修改,请搜索关键词custom_ghs_recharge ssh 20240309
  13. public static function rechargeClear($custom, $amount, $shop, $staff, $payWay, $params)
  14. {
  15. $respond = CustomClass::rechargeBalance($custom, $amount, $shop, $staff, $payWay, $params);
  16. $custom = $respond['custom'] ?? [];
  17. $ghs = $respond['ghs'] ?? [];
  18. $customRecharge = $respond['customRecharge'] ?? [];
  19. if (empty($custom)) {
  20. util::fail('没有客户信息');
  21. }
  22. if (empty($ghs)) {
  23. util::fail('没有供货商信息');
  24. }
  25. OrderClearClass::useBalanceClear($custom, $ghs, $shop, $staff);
  26. return $customRecharge;
  27. }
  28. //分享建立客户和供货商关系 ssh 2021.2.28
  29. public static function shareBuildTrade($applyData, $newShop)
  30. {
  31. $shopId = $newShop->id ?? 0;
  32. $introShopId = $applyData['introShopId'] ?? 0;
  33. if (!empty($introShopId)) {
  34. //申请人是花店,介绍人是供货商
  35. if ($applyData['style'] == SjClass::STYLE_RETAIL) {
  36. if ($applyData['introStyle'] == SjClass::STYLE_SUPPLIER) {
  37. CustomClass::build($introShopId, $shopId);
  38. }
  39. }
  40. //申请人是供货商,介绍人是花店
  41. if ($applyData['style'] == SjClass::STYLE_SUPPLIER) {
  42. if ($applyData['introStyle'] == SjClass::STYLE_RETAIL) {
  43. CustomClass::build($shopId, $introShopId);
  44. }
  45. }
  46. //申请人和介绍人都是花店,但是从供货商采购页邀请也建立关系
  47. if ($applyData['style'] == SjClass::STYLE_RETAIL) {
  48. if ($applyData['introStyle'] == SjClass::STYLE_RETAIL) {
  49. $fromGhsId = $applyData['fromGhsId'] ?? 0;
  50. if (!empty($fromGhsId)) {
  51. $fromGhs = GhsClass::getById($fromGhsId, true);
  52. $ghsShopId = $fromGhs->shopId ?? 0;
  53. if (!empty($ghsShopId)) {
  54. CustomClass::build($ghsShopId, $shopId);
  55. }
  56. }
  57. }
  58. }
  59. }
  60. }
  61. //客户列表 ssh 20210715
  62. public static function getCustomList($where)
  63. {
  64. $data = CustomClass::getList('*', $where, 'addTime DESC');
  65. $list = isset($data['list']) && !empty($data['list']) ? $data['list'] : [];
  66. if (empty($list)) {
  67. return $data;
  68. }
  69. $data['list'] = CustomClass::groupBaseInfo($list);
  70. return $data;
  71. }
  72. //有带排序的列表 ssh 20210913
  73. public static function getCustomSortList($where, $order)
  74. {
  75. $data = CustomClass::getList('*', $where, $order);
  76. $list = isset($data['list']) && !empty($data['list']) ? $data['list'] : [];
  77. if (empty($list)) {
  78. return $data;
  79. }
  80. $data['list'] = CustomClass::groupBaseInfo($list);
  81. return $data;
  82. }
  83. //获取客户信息,包括商家头像和店长信息 ssh 2021.1.8
  84. public static function getCustomInfo($customId)
  85. {
  86. $custom = CustomClass::getById($customId);
  87. if (empty($custom)) {
  88. return [];
  89. }
  90. $list = CustomClass::groupBaseInfo([$custom]);
  91. $custom = current($list);
  92. return $custom;
  93. }
  94. //欠款客户列表 ssh 2021.126
  95. public static function getDebtList($where)
  96. {
  97. $data = CustomClass::getList('*', $where, 'debtAmount DESC');
  98. $data['customNum'] = 0;
  99. $data['debtAmount'] = 0.00;
  100. $list = isset($data['list']) && !empty($data['list']) ? $data['list'] : [];
  101. if (empty($list)) {
  102. return $data;
  103. }
  104. $data['list'] = CustomClass::groupBaseInfo($list);
  105. return $data;
  106. }
  107. }