partnerlogic.php 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253
  1. <?php
  2. /*
  3. * @Author: wang jun
  4. * @Date: 2021-11-18 11:26:25
  5. * @Last Modified by: wang jun
  6. * @Last Modified time: 2021-12-29 14:44:51
  7. */
  8. namespace app\index\logic;
  9. use app\index\model\partnergainmodel;
  10. use app\index\model\partnermembermodel;
  11. use app\index\model\partnermodel;
  12. use app\index\model\userinfomodel;
  13. class partnerlogic
  14. {
  15. /**
  16. * 新建合伙人
  17. * 20211118
  18. * wj
  19. */
  20. public function newpartnerinfo($arr)
  21. {
  22. if (!isset($arr['userid']) || empty($arr['userid'])) {
  23. return backarr(0, "请求错误");
  24. }
  25. $userid = $arr['userid'];
  26. $m_u = new userinfomodel();
  27. $uwhere = ['id' => $userid];
  28. $userinfo = $m_u->getInfo($uwhere);
  29. if (empty($userinfo)) {
  30. return backarr(0, "无用户信息");
  31. }
  32. if (!isset($arr['username']) || empty($arr['username'])) {
  33. $name = $userinfo['wname'];
  34. } else {
  35. $name = $arr['username'];
  36. }
  37. $m_p = new partnermodel();
  38. $pwhere = ['userid' => $userid];
  39. $pinfo = $m_p->getInfo($pwhere);
  40. if (!empty($pinfo)) {
  41. return backarr(0, "已存在");
  42. }
  43. $insertData = [
  44. 'userid' => $userid,
  45. 'username' => $name,
  46. 'createdate' => date("Y-m-d H:i:s"),
  47. ];
  48. $id = $m_p->insertData($insertData);
  49. if (empty($id)) {
  50. return backarr(0, "操作失败");
  51. }
  52. $where = ['id' => $id];
  53. $pinfo = $m_p->getInfo($where);
  54. return backarr(1, "操作成功", $pinfo);
  55. }
  56. /***
  57. * 新建合伙人下级
  58. * 20211118
  59. * wj
  60. * eidt by steelxu
  61. * 20220112
  62. * 因为合伙人可能从通过专用分享码中拉取更多人的用户中提升,所以一开始panter用户并不一定是真正的合伙人,
  63. *
  64. */
  65. public function newpartnermember($arr)
  66. {
  67. $fillfield = ['partneruserid', 'memberuserid'];
  68. foreach ($fillfield as $key => $value) {
  69. if (!isset($arr[$value]) || empty($arr[$value])) {
  70. return backarr(0, "请求错误");
  71. }
  72. }
  73. $partneruserid = $arr['partneruserid'];
  74. $memberuserid = $arr['memberuserid'];
  75. $m_u = new userinfomodel();
  76. $uwhere = ['id' => $partneruserid];
  77. $puserinfo = $m_u->getInfo($uwhere);
  78. if (empty($puserinfo)) {
  79. return backarr(0, "无合伙人用户信息");
  80. }
  81. $uwhere = ['id' => $memberuserid];
  82. $muserinfo = $m_u->getInfo($uwhere);
  83. if (empty($muserinfo)) {
  84. return backarr(0, "无下级用户信息");
  85. }
  86. if (empty($muserinfo['sfzid'])) {
  87. $arr['isadd'] = 0;
  88. if (isset($arr['addmemberdate'])) {
  89. unset($arr['addmemberdate']);
  90. }
  91. } else {
  92. $arr['isadd'] = 1;
  93. $arr['addmemberdate'] = date('Y-m-d H:i:s');
  94. }
  95. //steelxu5 edity 20220112 取消校验
  96. /* $m_p = new partnermodel();
  97. $pinfo = $m_p->getInfo(['userid' => $partneruserid, 'isactive' => 1]);
  98. if (empty($pinfo)) {
  99. return backarr(0, "合伙人信息不存在");
  100. }*/
  101. $m_pm = new partnermembermodel();
  102. $pmwhere = [
  103. 'partneruserid' => $partneruserid,
  104. 'memberuserid' => $memberuserid,
  105. ];
  106. $pminfo = $m_pm->getInfo($pmwhere);
  107. if (!empty($pminfo)) {
  108. return backarr(0, "已存在");
  109. }
  110. $arr['intodate'] = date('Y-m-d H:i:s');
  111. $id = $m_pm->insertData($arr);
  112. if (empty($id)) {
  113. return backarr(0, "操作失败");
  114. }
  115. return backarr(1, "操作成功", ['id' => $id]);
  116. }
  117. /**
  118. * 修改合伙人下级信息 上级:下级 1:n
  119. * 20211118
  120. * wj
  121. */
  122. public function addbymemberuserid($arr)
  123. {
  124. if (!isset($arr['memberuserid']) || empty($arr['memberuserid'])) {
  125. return backarr(0, "请求错误");
  126. }
  127. $memberuserid = $arr['memberuserid'];
  128. $m_pm = new partnermembermodel();
  129. $where = [
  130. 'memberuserid' => $memberuserid,
  131. 'isadd' => 0,
  132. ];
  133. $info = $m_pm->getInfo($where);
  134. if (empty($info)) {
  135. return backarr(0, "无数据");
  136. }
  137. $updateData = [
  138. 'isadd' => 1,
  139. 'addmemberdate' => date('Y-m-d H:i:s'),
  140. ];
  141. $row = $m_pm->updateinfo(['id' => $info['id']], $updateData);
  142. if ($row <= 0) {
  143. return backarr(0, "操作失败");
  144. }
  145. return backarr(0, "操作成功", ['id' => $info['id']]);
  146. }
  147. /***
  148. * 新建合伙人收益
  149. * 20211118
  150. * wj
  151. */
  152. public function newpartnergain($arr)
  153. {
  154. $fillfield = ['userid', 'daygain'];
  155. foreach ($fillfield as $key => $value) {
  156. if (!isset($arr[$value]) || empty($arr[$value])) {
  157. return backarr(0, "请求错误");
  158. }
  159. }
  160. $userid = $arr['userid'];
  161. $m_u = new userinfomodel();
  162. $uwhere = ['id' => $userid];
  163. $userinfo = $m_u->getInfo($uwhere);
  164. if (empty($userinfo)) {
  165. return backarr(0, "无用户信息");
  166. }
  167. $m_p = new partnermodel();
  168. $pinfo = $m_p->getInfo(['userid' => $userid, 'isactive' => 1]);
  169. if (empty($pinfo)) {
  170. return backarr(0, "合伙人信息不存在");
  171. }
  172. $arr['gaindate'] = date('Y-m-d H:i:s');
  173. $m_pg = new partnergainmodel();
  174. $id = $m_pg->insertData($arr);
  175. if (empty($id)) {
  176. return backarr(0, "操作失败");
  177. }
  178. return backarr(0, "操作成功", ['id' => $id]);
  179. }
  180. /**
  181. * 获取合伙人下级列表
  182. * 20211118
  183. * wj
  184. */
  185. public function getpartnermemberlist($arr)
  186. {
  187. if (!isset($arr['partneruserid']) || empty($arr['partneruserid'])) {
  188. return backarr(0, "请求错误");
  189. }
  190. $partneruserid = $arr['partneruserid'];
  191. $page = isset($arr['page']) && !empty($arr['page']) ? $arr['page'] : 1;
  192. $size = isset($arr['size']) && !empty($arr['size']) ? $arr['size'] : 10;
  193. $where = [];
  194. if (isset($arr['isadd']) && in_array($arr['isadd'], [0, 1])) {
  195. $where['isadd'] = $arr['isadd'];
  196. }
  197. if (isset($arr['isadd']) && in_array($arr['isadd'], [0, 1])) {
  198. $where['isadd'] = $arr['isadd'];
  199. }
  200. $m_pm = new partnermembermodel();
  201. $m_u = new userinfomodel();
  202. $count = $m_pm->getList($where, 'count');
  203. if ($count <= 0) {
  204. return backarr(0, "无数据");
  205. }
  206. $list = $m_pm->getList($where, '*', $page, $size, 'id asc')->toArray();
  207. $userinfofiled = ['wname', 'gender', 'wage'];
  208. foreach ($list as $key => $value) {
  209. $uwhere = ['id' => $value['memberuserid']];
  210. $userinfo = $m_u->getInfo($uwhere, $userinfofiled)->toArray();
  211. $list[$key] = array_merge($value, $userinfo);
  212. }
  213. return backarr(1, "查询成功", $list);
  214. }
  215. /**
  216. * 修改合伙人信息
  217. * 20211229
  218. * wj
  219. */
  220. public function updateinfobyid($id, $updatedata)
  221. {
  222. $m_p = new partnermodel();
  223. $where = ['id' => $id];
  224. //$info = $m_p->getInfo($where);
  225. $row = $m_p->updateinfo($where, $updatedata);
  226. if (!$row) {
  227. return backarr(0, "修改失败");
  228. }
  229. return backarr(1, "修改成功", $where);
  230. }
  231. /*
  232. * steelxu5
  233. * 20220113
  234. * 获得某人拉来的人员数量
  235. * 不需要考虑实名认证,也就是不需要是正式的合伙人下级
  236. */
  237. public function getmembercountbypartnerid($arr){
  238. $partneruid=$arr['puserid'];
  239. $t_pm=new partnermembermodel();
  240. $rcount=$t_pm->selcountbypartnerid($partneruid);
  241. return backarr(1, "汇总数据", $rcount);
  242. }
  243. }