Import.php 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209
  1. <?php
  2. namespace Agent\Lib;
  3. use Dever;
  4. class Import
  5. {
  6. # 图片存放地址
  7. private $img_host = 'https://cryl.yijiuguanfang.com/attachment/';
  8. public function __construct()
  9. {
  10. $this->db = Dever::db('agent/test:old');
  11. }
  12. # 获取已审核的条件
  13. private function get_yes_where()
  14. {
  15. //issuingstate=1 已发放权益
  16. return 'restatus = 0 and status = 1 and prestatus = 1 and isagent = 1';
  17. }
  18. # 获取审核失败的条件
  19. private function get_no_where()
  20. {
  21. //issuingstate=1 已发放权益
  22. return 'restatus = 1 and isagent = 1';
  23. }
  24. # 获取待审核的条件
  25. private function get_where()
  26. {
  27. //issuingstate=1 已发放权益
  28. return 'restatus = 0 and status = 0 and isagent = 1 and contractstatus = 1';
  29. }
  30. # 获取sql
  31. public function get_sql_api()
  32. {
  33. $table['已审核'] = 'select count(*) as num,mobile from ims_ewei_shop_member where '.$this->get_yes_where().' group by mobile order by num desc';
  34. $table['审核失败'] = 'select count(*) as num,mobile from ims_ewei_shop_member where '.$this->get_no_where().' group by mobile order by num desc';
  35. $table['待审核'] = 'select count(*) as num,mobile from ims_ewei_shop_member where '.$this->get_where().' group by mobile order by num desc';
  36. echo Dever::table($table);die;
  37. }
  38. public function get_api()
  39. {
  40. # 获取已审核通过、权益已发放的用户
  41. $data = $this->db->fetchAll('select * from ims_ewei_shop_member where '.$this->get_yes_where().' order by id asc limit 10');
  42. print_r($data);die;
  43. foreach ($data as $k => $v) {
  44. # 创建订单
  45. $order = Dever::db('agent/order')->find($v['id']);
  46. if (!$order) {
  47. $data = array();
  48. $data['id'] = $v['id'];
  49. $data['mobile'] = $v['mobile'];
  50. $data['name'] = $v['realname'];
  51. $data['avatar'] = $v['avatar'];
  52. $data['username'] = $v['nickname'];
  53. $data['mid'] = $v['id'];
  54. $data['parent_mid'] = $v['agentid'];
  55. $data['parent_code'] = Dever::load("invite/api.code", $data['parent_mid']);
  56. $data['role'] = $this->getRole($v['agentlevel']);
  57. $data['area'] = str_replace(' ', ',', $v['datavalue']);
  58. if ($v['streetvalue']) {
  59. $data['area'] .= ',' . $v['streetvalue'];
  60. }
  61. if ($v['entertype'] == 1) {
  62. $data['type'] = 1;
  63. } else {
  64. $data['type'] = 2;
  65. }
  66. $data['price'] = $v['paymoney'];
  67. $data['f_price'] = $data['price'];
  68. $role = Dever::db('setting/role')->find($data['role']);
  69. if ($role['type'] == 1) {
  70. $data['f_price'] = $role['price'];
  71. } elseif ($role['type'] == 2) {
  72. $data['f_price'] = Dever::load('area/api')->getPrice($role['area'], $data['area']);
  73. if ($data['f_price'] <= 0) {
  74. $data['f_price'] = $data['price'];
  75. }
  76. }
  77. $data['agent_cash'] = $data['f_price'];
  78. $data['sign'] = $v['contractsign'];
  79. $data['idcard'] = $v['idnumber'];
  80. if ($v['identity']) {
  81. $identity = Dever::json_decode($v['identity']);
  82. if (isset($identity[0])) {
  83. $data['idcard_front'] = $identity[0];
  84. }
  85. if (isset($identity[1])) {
  86. $data['idcard_back'] = $identity[1];
  87. }
  88. }
  89. $data['company_name'] = $v['company'];
  90. $data['address'] = $v['province'] . $v['city'] . $v['area'] . $v['street'];
  91. $data['pay_type'] = 2;
  92. $data['pay_pic'] = $v['receipt'];
  93. $data['status'] = $this->getStatus($v);
  94. $data['audit_desc'] = $v['refuse'];
  95. if ($v['issuingstate'] == 1) {
  96. $data['goods_status'] = 3;
  97. } else {
  98. $data['goods_status'] = 1;
  99. }
  100. $data['pay_status'] = 2;
  101. $data['order_num'] = Dever::load('agent/lib/order')->getOrderId();
  102. $order_id = Dever::db('agent/order')->insert($data);
  103. if ($order_id && $data['status'] == 4) {
  104. $member = Dever::db('agent/member')->find($v['id']);
  105. if ($data['status'] == 4) {
  106. $data['status'] = 2;
  107. } elseif ($data['status'] == 5) {
  108. $data['status'] = 1;
  109. $data['state'] = 2;
  110. } else {
  111. $data['status'] = 1;
  112. }
  113. $data['rdate'] = $v['agenttime'];
  114. $data['cash'] = $v['credit2'];
  115. $data['group_sell'] = $v['allcommission'];
  116. if (!$member) {
  117. Dever::db('agent/order')->insert($data);
  118. } else {
  119. $data['where_id'] = $member['id'];
  120. Dever::db('agent/order')->update($data);
  121. }
  122. }
  123. }
  124. }
  125. print_r($data);die;
  126. }
  127. # 状态对应
  128. private function getStatus($data)
  129. {
  130. # 完成权益发放issuingstate、财务审核status、初审prestatus的认为订单有效
  131. if ($data['issuingstate'] == 1 && $data['status'] == 1 && $data['prestatus'] == 1) {
  132. return 4;
  133. } elseif ($data['status'] == 1 && $data['prestatus'] == 1) {
  134. return 3;
  135. } elseif ($data['prestatus'] == 1) {
  136. return 2;
  137. } elseif ($data['restatus'] == 1) {
  138. # 审核失败
  139. return 5;
  140. } elseif ($data['trainersign'] && $data['contractsign']) {
  141. return 1;
  142. } else {
  143. return -2;
  144. }
  145. }
  146. # 代理商角色对应
  147. private function getRole($role)
  148. {
  149. # key是历史数据 value是最新数据
  150. $config = array
  151. (
  152. # 创服
  153. 5 => 5,
  154. # 创客
  155. 4 => 6,
  156. # 逍客
  157. 8 => 7,
  158. # 城市
  159. 1 => 2,
  160. # 区县
  161. 2 => 3,
  162. # 街道
  163. 3 => 4,
  164. # 炒菜机分享会员
  165. 6 => 8,
  166. # 热敏炉分享会员
  167. 7 => 9,
  168. );
  169. if (isset($config[$role]) && $config[$role]) {
  170. return $config[$role];
  171. }
  172. return 1;
  173. }
  174. }