db = Dever::db('agent/test:old'); } # 获取已审核的条件 private function get_yes_where() { //issuingstate=1 已发放权益 return 'restatus = 0 and status = 1 and prestatus = 1 and isagent = 1'; } # 获取审核失败的条件 private function get_no_where() { //issuingstate=1 已发放权益 return 'restatus = 1 and isagent = 1'; } # 获取待审核的条件 private function get_where() { //issuingstate=1 已发放权益 return 'restatus = 0 and status = 0 and isagent = 1 and contractstatus = 1'; } # 获取sql public function get_sql_api() { $table['已审核'] = 'select count(*) as num,mobile from ims_ewei_shop_member where '.$this->get_yes_where().' group by mobile order by num desc'; $table['审核失败'] = 'select count(*) as num,mobile from ims_ewei_shop_member where '.$this->get_no_where().' group by mobile order by num desc'; $table['待审核'] = 'select count(*) as num,mobile from ims_ewei_shop_member where '.$this->get_where().' group by mobile order by num desc'; echo Dever::table($table);die; } public function get_api() { $host = 'https://cryl.yijiuguanfang.com/attachment/'; $state = 1; while($state) { $state = $this->get_data($host, $state); } # 导入管理表 //$this->getRelation(); return 'ok'; } public function get_data($host, $index = 0) { # 获取已审核通过、权益已发放的用户 $index = $index - 1; $limit = 1000; $data = $this->db->fetchAll('select * from ims_ewei_shop_member where '.$this->get_yes_where().' order by id asc limit ' . $index . ', ' . $limit); if (!$data) { return false; } foreach ($data as $k => $v) { # 创建订单 $order = Dever::db('agent/order')->find(array('id' => $v['id'], 'clear' => true)); if (!$order) { $data = array(); $data['id'] = $v['id']; $data['mobile'] = $v['mobile']; $data['name'] = $v['realname']; $data['avatar'] = $v['avatar']; $data['username'] = $v['nickname']; $data['mid'] = $v['id']; $data['parent_mid'] = $v['agentid']; $data['parent_code'] = Dever::load("invite/api.code", $data['parent_mid']); $data['role'] = $this->getRole($v['agentlevel']); $data['area'] = str_replace(' ', ',', $v['datavalue']); if ($v['streetvalue']) { $data['area'] .= ',' . $v['streetvalue']; } if ($v['entertype'] == 1) { $data['type'] = 1; } else { $data['type'] = 2; } $data['price'] = $v['paymoney']; $data['f_price'] = $data['price']; $role = Dever::db('setting/role')->find($data['role']); if ($role['type'] == 1) { $data['f_price'] = $role['price']; } elseif ($role['type'] == 2) { $data['f_price'] = Dever::load('area/api')->getPrice($role['area'], $data['area']); if ($data['f_price'] <= 0) { $data['f_price'] = $data['price']; } # 区域要进行占用 Dever::load('area/api')->upStatus($data['area'], 2); $area_data = array('mid' => $v['id'], 'order_id' => $v['id'], 'role' => $data['role'], 'area' => $data['area']); $area_data['type'] = 4; $area_data['price'] = $data['f_price']; Dever::db('agent/member_area')->insert($area_data); } $data['agent_cash'] = $data['f_price']; $data['sign'] = $v['contractsign'] ? $host . $v['contractsign'] : ''; $data['idcard'] = $v['idnumber']; $data['idcard_front'] = $data['idcard_back'] = ''; if ($v['identity']) { $identity = Dever::json_decode($v['identity']); if (isset($identity[0])) { $data['idcard_front'] = $host . $identity[0]; } if (isset($identity[1])) { $data['idcard_back'] = $host . $identity[1]; } } $data['company_name'] = $v['company']; $data['address'] = $v['province'] . $v['city'] . $v['area'] . $v['street']; $data['pay_type'] = 2; $receipt = Dever::json_decode($v['receipt']); $data['pay_pic'] = $host . $receipt[0]; $data['status'] = $this->getStatus($v); $data['audit_desc'] = $v['refuse']; if ($v['issuingstate'] == 1) { $data['goods_status'] = 3; } else { $data['goods_status'] = 1; } $data['pay_status'] = 2; $data['import'] = $v['olduid'] > 0 ? 3 : 2; $data['order_num'] = Dever::load('agent/lib/order')->getOrderId(); $data['cdate'] = $v['agentapplytime']; if ($data['status'] == 4) { $data['fdate'] = $v['agenttime']; } $data['order_type'] = 1; $data['company_pic'] = ''; $order_id = Dever::db('agent/order')->insert($data); if ($order_id) { if (!$v['preagenttime']) { $v['preagenttime'] = $v['agenttime']; } if ($data['status'] == 2) { $this->addProcess($order_id, 1, $v['preagenttime'], $data); } elseif ($data['status'] == 3) { $this->addProcess($order_id, 1, $v['preagenttime'], $data); $this->addProcess($order_id, 2, $v['agenttime'], $data); } elseif ($data['status'] == 4) { $this->addProcess($order_id, 1, $v['preagenttime'], $data); $this->addProcess($order_id, 2, $v['agenttime'], $data); $this->addProcess($order_id, 3, $v['agenttime'], $data); } # 生成合同 if ($data['sign']) { $this->addAgreement($data); } $member = Dever::db('agent/member')->find($v['id']); if ($data['status'] == 4) { $data['status'] = 2; } elseif ($data['status'] == 5) { $data['status'] = 1; $data['state'] = 2; } else { $data['status'] = 1; } $mc_member = $this->db->fetch('select * from ims_mc_members where uid = ' . $v['uid']); $data['rdate'] = $v['agenttime']; $data['cash'] = ($mc_member && $mc_member['credit2']) ? $mc_member['credit2'] : $v['credit2']; $data['group_sell'] = $v['allcommission']; Dever::load('invite/api')->setRelation($data['mid'], $data['parent_mid']); if (!$member) { Dever::db('agent/member')->insert($data); } else { $data['where_id'] = $member['id']; Dever::db('agent/member')->update($data); } } } } $index = $index + 1; return $index * $limit; } # 导入管理表 private function getRelation() { $data = $this->db->fetchAll('select * from ims_ewei_shop_commission_relation'); if ($data) { foreach ($data as $k => $v) { $where['uid'] = $v['pid']; $where['to_uid'] = $v['id']; $where['level'] = $v['level']; $info = Dever::db('invite/relation')->one($where); if (!$info) { Dever::db('invite/relation')->insert($where); } } } } # 生成合同 private function addAgreement($data) { Dever::load('agent/lib/agreement')->up($data); } # 更新进度 private function addProcess($order_id, $status, $time, $data) { $where['order_id'] = $order_id; $where['status'] = $status; $info = Dever::db('agent/order_process')->find($where); if (!$info) { if ($status == 3) { $where['type'] = '1,2,3,5'; } $where['cdate'] = $time; Dever::db('agent/order_process')->insert($where); } } # 状态对应 private function getStatus($data) { # 完成权益发放issuingstate、财务审核status、初审prestatus的认为订单有效 if ($data['issuingstate'] == 1 && $data['status'] == 1 && $data['prestatus'] == 1) { return 4; } elseif ($data['status'] == 1 && $data['prestatus'] == 1) { return 4; } elseif ($data['prestatus'] == 1) { return 2; } elseif ($data['restatus'] == 1) { # 审核失败 return 5; } elseif ($data['trainersign'] && $data['contractsign']) { return 1; } else { return -2; } } # 代理商角色对应 private function getRole($role) { # key是历史数据 value是最新数据 $config = array ( # 创服 5 => 5, # 创客 4 => 6, # 逍客 8 => 7, # 城市 1 => 2, # 区县 2 => 3, # 街道 3 => 4, # 炒菜机分享会员 6 => 8, # 热敏炉分享会员 7 => 9, ); if (isset($config[$role]) && $config[$role]) { return $config[$role]; } return 1; } }