123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792 |
- <?php
- namespace Agent\Src;
- use Dever;
- use Agent\Lib\Core;
- class My extends Core
- {
- public function update()
- {
- Dever::commend();
- }
-
- public function getInfo()
- {
- $this->data['user'] = Dever::load('agent/lib/member')->getInfo($this->user);
- $this->data['config'] = Dever::db('setting/base')->one();
-
- $this->data['num'] = Dever::load('invite/api')->getChildNum($this->uid, 1);
-
- return $this->data;
- }
-
- public function getUser()
- {
- $where['id'] = $this->uid;
- $this->data['user'] = array();
- if (!$this->user['idcard']) {
- return $this->data;
- }
- $this->data['user'] = array();
- if (!preg_match(Dever::rule('idcard'), $this->user['idcard'])) {
- return $this->data;
- }
- $where['idcard'] = $this->user['idcard'];
- $this->data['user'] = Dever::db('agent/member')->getData($where);
- if ($this->data['user']) {
- foreach ($this->data['user'] as $k => $v) {
- $this->data['user'][$k] = Dever::load('agent/lib/member')->getInfo($v);
- }
- }
- return $this->data;
- }
-
- public function getUserView()
- {
- $id = Dever::input('id');
- $this->data['info'] = Dever::db('agent/member')->find($id);
- if ($this->data['info'] && $this->data['info']['idcard'] == $this->user['idcard']) {
- $this->data['info'] = Dever::load('agent/lib/member')->getInfo($this->data['info']);
- } else {
- Dever::alert('这不是您的子账户');
- }
- return $this->data;
- }
-
- public function getShop()
- {
- $where['type'] = 10;
- $where['area'] = Dever::input('area');
- $this->data['shop'] = Dever::db('shop/info')->getAll($where);
- $this->data['pshop'] = Dever::db('shop/info')->getInfo(array('type' => 10));
- $id = Dever::input('id', $this->uid);
- $this->data['info'] = Dever::db('agent/member')->find($id);
- if ($this->data['info'] && $this->data['info']['idcard'] == $this->user['idcard']) {
-
- } else {
- Dever::alert('这不是您的子账户');
- }
- return $this->data;
- }
-
- public function setShop()
- {
- $id = Dever::input('id', $this->uid);
- $shop_id = Dever::input('shop_id');
- $this->data['info'] = Dever::db('agent/member')->find($id);
- if ($this->data['info'] && $this->data['info']['idcard'] == $this->user['idcard']) {
- Dever::db('agent/member')->update(array('where_id' => $id, 'shop_id' => $shop_id));
- } else {
- Dever::alert('这不是您的子账户');
- }
- return 'ok';
- }
-
- public function area()
- {
- $this->data['user'] = Dever::load('agent/lib/member')->getInfo($this->user);
- $where['mid'] = $this->data['user']['id'];
-
- $this->data['button'] = array();
- $this->data['button']['up'] = 2;
- $this->data['button']['buy'] = 2;
- if ($this->data['user']['role']) {
- if ($this->data['user']['role']['levelup'] == 1) {
- $this->data['button']['up'] = 1;
- if ($this->data['user']['role']['type'] == 2 && $this->data['user']['role']['area'] == 1) {
- $temp = explode(',', $this->data['user']['area']);
- $city = Dever::db('area/city')->find($temp[1]);
- if ($city && $city['level'] == 1) {
- $this->data['button']['up'] = 2;
- }
- }
- }
- if ($this->data['user']['role']['isbuy'] == 1) {
- $this->data['button']['buy'] = 2;
- }
- }
- return $this->data;
- }
-
- public function getUpInfo()
- {
- $this->data['user'] = Dever::load('agent/lib/member')->getInfo($this->user);
- if ($this->data['user']['role']['type'] == 2) {
- $temp = explode(',', $this->data['user']['area']);
-
- $city = Dever::db('area/city')->find($temp[1]);
- $level_info = array();
- if ($city['level_id'] && $city['level_id'] > 0) {
- $level_info = Dever::db('area/level')->find($city['level_id']);
- }
-
- if ($this->data['user']['role']['area'] == 1) {
- if ($city && $level_info && $level_info['level'] == 1) {
- $this->data['role'] = array();
- } else {
- $this->data['role'] = Dever::db('setting/role')->getInfo(array('isbuy' => 1, 'type' => 2, 'area' => 1));
- }
- }
-
- if ($this->data['user']['role']['area'] == 2) {
- $area = '1,2';
- if ($city && $level_info && $level_info['level'] == 1) {
- $county = Dever::db('area/county')->find($temp[2]);
- if ($county && $county['level'] == 1) {
- $area = '1';
- }
- }
- $this->data['role'] = Dever::db('setting/role')->getInfo(array('isbuy' => 1, 'type' => 2, 'area' => $area));
- }
-
- if ($this->data['user']['role']['area'] == 3) {
- $area = '1,2,3';
- if ($city && $level_info && $level_info['level'] == 1) {
- $county = Dever::db('area/county')->find($temp[2]);
- $town = Dever::db('area/town')->find($temp[3]);
- if ($county && $county['level'] == 1 && $town && $town['type'] != 1) {
- $area = '1,2';
- }
- }
- $this->data['role'] = Dever::db('setting/role')->getInfo(array('isbuy' => 1, 'type' => 2, 'area' => $area));
- }
- } else {
- $this->data['role'] = Dever::db('setting/role')->getInfo(array('isbuy' => 1, 'type' => 2));
- }
- $this->data['level_total'] = count($this->data['role']) + 1;
- $this->data['config'] = Dever::db('setting/base')->find();
- return $this->data;
- }
-
- public function buyArea()
- {
- $state = Dever::load('agent/lib/order')->action($this->uid);
- if ($state) {
- return $state;
- } else {
- Dever::alert('购买失败');
- }
- }
-
- public function invite()
- {
- $this->data['code'] = Dever::load('invite/api')->code($this->uid);
- return $this->data;
- }
-
- public function checkArea()
- {
- $where['role'] = Dever::input('role');
- $where['area'] = Dever::input('area');
- $this->data = Dever::load('agent/lib/order')->getPrice();
- $this->data['area_string'] = Dever::load("area/api.string", $where['area'], ' / ');
- $info = Dever::db('agent/member_area')->find($where);
-
- if ($info) {
- $this->data['state'] = 1;
- } else {
- $this->data['state'] = 2;
- }
- return $this->data;
- }
-
- public function order()
- {
- $where = array();
- $where['mid'] = $this->uid;
- $type = Dever::input('type');
- if ($type == 1) {
-
- $where['status'] = '1,2,3';
- } elseif ($type == 2) {
-
- $where['status'] = '4';
- } elseif ($type == 3) {
-
- $where['status'] = '5';
- }
-
- $this->data['list'] = Dever::db('agent/order')->getData($where);
- if ($this->data['list']) {
- foreach ($this->data['list'] as $k => $v) {
- $this->data['list'][$k] = $this->getOrderInfo($v);
- }
- }
- return $this->data;
- }
- public function orderInfo()
- {
- $where = array();
- $where['mid'] = $this->uid;
- $where['id'] = Dever::input('id');
- $this->data['info'] = Dever::db('agent/order')->find($where);
- if ($this->data['info']) {
- $this->data['info'] = $this->getOrderInfo($this->data['info']);
- }
- return $this->data;
- }
- private function getOrderInfo($info)
- {
- $info['role'] = Dever::db('setting/role')->find($info['role']);
- if ($info['status'] <= 3) {
- $info['status'] = 1;
- $info['status_name'] = '审核中';
- } elseif ($info['status'] == 4) {
- $info['status'] = 2;
- $info['status_name'] = '已确认';
- } elseif ($info['status'] == 5) {
- $info['status'] = 3;
- $info['status_name'] = '已作废';
- }
- $info['cdate'] = date('Y-m-d', $info['cdate']);
- $info['area_string'] = Dever::load("area/api.string", $info['area']);
- $info['member'] = Dever::db('agent/member')->find($info['mid']);
- $info['parent_member'] = Dever::db('agent/member')->find($info['parent_mid']);
- return $info;
- }
-
- public function goodsList()
- {
- $where['type'] = Dever::input('type', 1);
- $where['mid'] = $this->uid;
- $this->data['list'] = Dever::db('agent/member_goods')->getData($where);
- $this->data['type'] = $where['type'];
- if ($this->data['list']) {
- foreach ($this->data['list'] as $k => $v) {
- if ($v['num'] <= 0) {
- unset($this->data['list'][$k]);
- continue;
- }
- $this->getGoodsInfo($this->data['list'][$k]);
- }
- }
- return $this->data;
- }
- public function goodsListView()
- {
- $where['mid'] = $this->uid;
- $where['id'] = Dever::input('id');
- if (!$where['id']) {
- Dever::alert('错误');
- }
- $this->data['info'] = Dever::db('agent/member_goods')->find($where);
- if ($this->data['info']) {
- $this->getGoodsInfo($this->data['info']);
- }
- return $this->data;
- }
- private function getGoodsInfo(&$v)
- {
- if ($v['type'] == 1) {
- $goods_info = Dever::load('goods/lib/info')->getInfoBySku($v['type_id'], $v['sku_id']);
- if (isset($goods_info['sku'])) {
- $sku = $goods_info['sku']['string'];
- } else {
- $sku = '';
- }
-
- $v += array
- (
- 'pic' => $goods_info['cover'],
- 'name' => $goods_info['name'],
- 'sku' => $sku,
- 'price' => $goods_info['price'],
- );
- } elseif ($v['type'] == 2) {
- $code = Dever::db('card/code')->find($v['sku_id']);
- $card = Dever::db('card/info')->find($code['card_id']);
- $card_type = Dever::db('card/type')->find($card['type_id']);
- $shop_type = Dever::db('shop/info')->config['config_type'];
- $card_type['shop_type'] = explode(',', $card_type['shop_type']);
- foreach ($card_type['shop_type'] as $k1 => $v1) {
- $card_type['shop_type'][$k1] = $shop_type[$v1];
- }
- $card_type['shop_type'] = implode(',', $card_type['shop_type']);
- $v += array
- (
- 'name' => $card['name'],
- 'sku' => '',
- 'price' => $code['total_cash'],
- 'card' => $code['card'],
- 'shop_type' => $card_type['shop_type'],
- 'card_desc' => $card['content'],
- );
- } elseif ($v['type'] == 3) {
- $prize = Dever::db('setting/prize')->find($v['type_id']);
- $v += array
- (
- 'name' => $prize['name'],
- 'sku' => '',
- 'price' => $prize['price'],
- 'desc' => $prize['desc'],
- );
- }
- }
-
- public function dhGoods()
- {
- $type = Dever::input('type', 1);
- $this->data = Dever::load('agent/lib/dhorder')->goods($this->uid);
- return $this->data;
- }
-
- public function dhGoodsAct_commit()
- {
- $type = Dever::input('type', 1);
- $data = Dever::load('agent/lib/dhorder')->goods($this->uid);
- $address_id = Dever::input('address_id');
- if (!$address_id) {
- Dever::alert('请选择配送地址');
- }
- $dh_type = 1;
- if ($type == 3) {
- $dh_type = 2;
- }
- $info = Dever::input('info');
- return Dever::load('agent/lib/dhorder')->action($this->user, $data['name'], $data['num'], $data['price'], $data['list'], $address_id, $dh_type, $type, $info);
- }
-
- public function goodsOrder()
- {
- return Dever::load('agent/lib/dhorder')->getList($this->uid);
- }
-
- public function goodsOrderView()
- {
- $id = Dever::input('order_id');
- return Dever::load('agent/lib/dhorder')->getView($this->uid, $id);
- }
-
- public function getGroup()
- {
-
- $this->data['user'] = Dever::load('invite/api')->getChild($this->uid, 1);
- if ($this->data['user']) {
- foreach ($this->data['user'] as $k => $v) {
- $v = Dever::db('agent/member')->find($v['to_uid']);
- $this->data['user'][$k] = Dever::load('agent/lib/member')->getInfo($v);
- $this->data['user'][$k]['cdate'] = date('Y-m-d H:i', $v['cdate']);
- }
- }
- return $this->data;
- }
-
- public function getCash()
- {
- $this->data['user'] = $this->user;
- $this->data['type'] = Dever::db('bill/cash')->config['set']['type'];
- $this->data['status'] = Dever::db('bill/cash')->config['set']['status'];
- $where['mid'] = $this->uid;
- $type = Dever::input('type');
- if ($type) {
- $where['type'] = $type;
- }
- $this->data['list'] = Dever::db('bill/cash')->getData($where);
- if ($this->data['list']) {
- foreach ($this->data['list'] as $k => $v) {
- $this->data['list'][$k]['type_name'] = $this->data['type'][$v['type']];
- $this->data['list'][$k]['status_name'] = $this->data['status'][$v['status']];
- if ($v['type'] == 11) {
- $tixian = Dever::db('bill/tixian')->find($v['type_id']);
- if ($tixian && $tixian['status'] == 2) {
- $this->data['list'][$k]['status_name'] .= '(已发放)';
- } else {
- $this->data['list'][$k]['status_name'] .= '(待发放)';
- }
- }
- $this->data['list'][$k]['cdate'] = date('Y-m-d H:i', $v['cdate']);
- if ($v['cash'] > 0) {
- $this->data['list'][$k]['cash'] = '+' . $v['cash'];
- }
- }
- }
- return $this->data;
- }
- public function getCashView()
- {
- $where['mid'] = $this->uid;
- $where['id'] = Dever::input('id');
- $this->data['info'] = Dever::db('bill/cash')->find($where);
- $config = Dever::db('bill/cash')->config['set'];
- if ($this->data['info']) {
- $this->data['info']['type_name'] = $config['type'][$this->data['info']['type']];
- $this->data['info']['status_name'] = $config['status'][$this->data['info']['status']];
- $this->data['info']['cdate'] = date('Y-m-d H:i', $this->data['info']['cdate']);
- if ($this->data['info']['cash'] > 0) {
- $this->data['info']['cash'] = '+' . $this->data['info']['cash'];
- }
- if ($this->data['info']['type'] == 11) {
- $tixian = Dever::db('bill/tixian')->find($this->data['info']['type_id']);
- if ($tixian && $tixian['status'] == 2) {
- $this->data['info']['status_name'] .= '(已发放)';
- } else {
- $this->data['info']['status_name'] .= '(待发放)';
- }
- }
- }
- return $this->data;
- }
-
- public function tixianInfo()
- {
- $this->data['user'] = $this->user;
- $this->data['config'] = Dever::db('setting/base')->one();
- $this->data['config']['tax'] = $this->data['config']['tax']/100;
- $this->data['bank'] = Dever::db('setting/bank')->select();
-
- $this->data['mybank'] = Dever::db('bill/tixian')->getNew(array('mid' => $this->uid));
- return $this->data;
- }
-
- public function tixian_commit()
- {
- $cash = Dever::input('cash');
- if ($cash > $this->user['cash']) {
- Dever::alert('您的可提现金额不足');
- }
- $name = Dever::input('name');
- if (!$name) {
- Dever::alert('姓名不能为空');
- }
- $bank = Dever::input('bank');
- if (!$bank) {
- Dever::alert('银行不能为空');
- }
- $bankname = Dever::input('bankname');
- if (!$bankname) {
- Dever::alert('开户行不能为空');
- }
- $card = Dever::input('card');
- if (!$card) {
- Dever::alert('银行卡号不能为空');
- }
- $ycard = Dever::input('ycard');
- if (!$ycard) {
- Dever::alert('确认银行卡号不能为空');
- }
- if ($card != $ycard) {
- Dever::alert('银行卡号和确认银行卡号不同');
- }
- $config = Dever::db('setting/base')->one();
- $tax = $config['tax']/100;
- $ycash = $cash;
- $cash = $cash - $cash*$tax;
- $id = Dever::load('bill/lib/tixian')->up($this->uid, $ycash, $cash, $name, $bank, $bankname, $card);
- if ($id) {
- $cash_id = Dever::load('bill/lib/cash')->up($this->uid, 11, $ycash, $this->user['role'], $id, '提现到'.substr($card, -4).'银行卡', 1);
- Dever::db('bill/tixian')->update(array('where_id' => $id, 'cash_id' => $cash_id));
- $where['where_id'] = $this->uid;
- $where['cash'] = -1*$ycash;
- Dever::db('agent/member')->upCash($where);
- }
- return 'ok';
- }
-
- public function setPass()
- {
- $pass = Dever::input('pass');
- if (!$pass) {
- Dever::alert('请输入密码');
- }
- $where['where_id'] = $this->uid;
- $where['password'] = sha1($pass);
- Dever::db('agent/member')->update($where);
- return Dever::db('agent/member')->find(array('id' => $this->uid, 'clear' => true));
- }
-
- public function setInfo()
- {
- $where = array();
- $name = Dever::input('name');
- if ($name) {
- $where['name'] = $name;
- }
- $avatar = Dever::input('avatar');
- if ($avatar) {
- $where['avatar'] = $avatar;
- }
- $username = Dever::input('username');
- if ($username) {
- $where['username'] = $username;
- }
- $birthday = Dever::input('birthday');
- if ($birthday) {
- $where['birthday'] = Dever::maketime($birthday);
- }
- if ($where) {
- $where['where_id'] = $this->uid;
- Dever::db('agent/member')->update($where);
- }
- if ($name && $name != $this->user['name']) {
-
- $agreement = Dever::db('agent/member_agreement')->select(array('mid' => $this->uid, 'status' => 2));
- if ($agreement) {
- $sign = array();
- foreach ($agreement as $k => $v) {
- if ($v['name'] == $this->user['name']) {
- Dever::db('agent/member_agreement')->update(array('where_id' => $v['id'], 'status' => 3));
- $sign[] = $v;
- }
- }
- if ($sign) {
- foreach ($sign as $k => $v) {
- $info = Dever::db('agent/member_agreement')->find(array('mid' => $this->uid, 'name' => $name));
- if ($info) {
- Dever::db('agent/member_agreement')->update(array('where_id' => $info['id'], 'status' => 1));
- } else {
- unset($v['id']);
- unset($v['cdate']);
- unset($v['sdate']);
- unset($v['edate']);
- unset($v['qdate']);
- unset($v['sign']);
- $v['sign'] = '';
- $v['status'] = 1;
- $v['name'] = $name;
- Dever::db('agent/member_agreement')->insert($v);
- }
- }
- }
- }
- }
- return Dever::db('agent/member')->find(array('id' => $this->uid, 'clear' => true));
- }
-
- public function sendEmail()
- {
- $email = Dever::input('email');
- if ($email) {
- if (!preg_match(Dever::rule('email'), $email)) {
- Dever::alert('请输入正确的邮箱');
- }
- $check = Dever::db('agent/member')->find(array('email' => $email));
- if ($check) {
- Dever::alert('该邮箱已被认证,请更换');
- }
- $code = Dever::load('passport/reg')->code(false, false);
- $email = base64_encode($email);
-
- Dever::daemon('lib/email.renzheng?mid='.$this->uid.'&email=' . $email . '&code=' . $code, 'agent');
- return '邮件已经发送成功!请到您的邮箱里查看。';
- } else {
- Dever::alert('请输入邮箱');
- }
- }
-
- public function getAgreement()
- {
- $where['mid'] = $this->uid;
- $this->data['list'] = Dever::db('agent/member_agreement')->getAll($where);
- if ($this->data['list']) {
- $status = Dever::db('agent/member_agreement')->config['status'];
- foreach ($this->data['list'] as $k => $v) {
- $this->data['list'][$k]['status_name'] = $status[$v['status']];
- $this->data['list'][$k]['qdate_string'] = '';
- if ($v['qdate']) {
- $this->data['list'][$k]['qdate_string'] = date('Y.m.d', $v['qdate']);
- }
-
- $role = Dever::db('setting/role')->find($v['role']);
- $name = Dever::load('agent/lib/agreement')->name($v['agreement_id'], $v, $role, 2, 2);
- $this->data['list'][$k]['link'] = $name[1];
- }
- }
- return $this->data;
- }
-
- public function getAgreementView()
- {
- $where['mid'] = $this->uid;
- $where['id'] = Dever::input('id');
- $this->data['info'] = array();
- if ($where['id']) {
- $status = Dever::db('agent/member_agreement')->config['status'];
- $this->data['info'] = Dever::db('agent/member_agreement')->find($where);
- if ($this->data['info']) {
- $this->data['info']['status_name'] = $status[$this->data['info']['status']];
- $this->data['info']['qdate_string'] = '';
- if ($this->data['info']['qdate']) {
- $this->data['info']['qdate_string'] = date('Y.m.d', $this->data['info']['qdate']);
- }
-
- $role = Dever::db('setting/role')->find($this->data['info']['role']);
- $name = Dever::load('agent/lib/agreement')->name($this->data['info']['agreement_id'], $this->data['info'], $role, 2, 2);
- $this->data['info']['link'] = $name[1];
- }
- }
- return $this->data;
- }
-
- public function upAgreement()
- {
- $sign = Dever::input('sign');
- if (!$sign) {
- Dever::alert('请上传签名');
- }
- $where['mid'] = $this->uid;
- $where['id'] = Dever::input('id');
- if ($where['id']) {
- $info = Dever::db('agent/member_agreement')->find($where);
- if ($info && $info['status'] == 1) {
- $state = Dever::db('agent/member_agreement')->update(array('sign' => $sign, 'where_id' => $info['id'], 'status' => 2, 'qdate' => time()));
- if ($state) {
- $role = Dever::db('setting/role')->find($info['role']);
- $info['sign'] = $sign;
- $name = Dever::load('agent/lib/agreement')->name($info['agreement_id'], $info, $role, 2, 2);
- return array('link' => $name[1]);
- }
- }
- }
- Dever::alert('合同不存在');
- }
-
- public function getSell()
- {
- $this->data['user'] = $this->user;
- $where['mid'] = $this->uid;
- $this->data['list'] = Dever::db('bill/sell_stat')->getData($where);
- if ($this->data['list']) {
- foreach ($this->data['list'] as $k => $v) {
- $this->data['list'][$k]['month_string'] = date('Y年m月', $v['month']);
- }
- }
- return $this->data;
- }
-
- public function getDefaultAddress()
- {
- $id = Dever::input('id');
- return Dever::load('agent/address')->getDefaultAddress($this->uid);
- }
-
- public function address()
- {
- return Dever::load('agent/address')->getAddress($this->uid);
- }
-
- public function getAddress()
- {
- $id = Dever::input('id');
- return Dever::load('agent/address')->getOne($this->uid, $id);
- }
-
- public function delAddress()
- {
- $id = Dever::input('id');
- return Dever::load('agent/address')->del($this->uid, $id, 2);
- }
- }
|