123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 |
- <?php
- namespace Scm_role\Lib;
- use Dever;
- class Supplier
- {
- public function __construct()
- {
- Dever::load('manage/auth.init');
- }
- # 获取下游
- public function search_api()
- {
- $role = Dever::input('role');
- return Dever::search('scm_role/' . $role);
- }
- # 分配供应商
- public function get_api()
- {
- $role = Dever::input('role');
- $id = Dever::input('id', 1);
- $data = Dever::db('scm_role/'.$role.'_supplier')->getAll(array($role . '_id' => $id));
- $type = Dever::db('scm_role/supplier_type')->select();
-
- $result = array();
- if ($type) {
- $i = 0;
- foreach ($type as $k => $v) {
- $supplier = Dever::db('scm_role/supplier')->select(array('status' => 1, 'type_id' => $v['id']));
- if ($supplier) {
- $result[$i] = array();
- $result[$i]['id'] = $v['id'];
- $result[$i]['name'] = $v['name'];
- $result[$i]['select'] = 2;
- $result[$i]['end'] = false;
- $result[$i]['children'] = array();
- foreach ($supplier as $k1 => $v1) {
- $child = array();
- $child['id'] = $v1['id'];
- $child['name'] = $v1['name'];
- $child['code'] = $v1['code'];
- $child['type_name'] = $v['name'];
- $child['select'] = 2;
- $child['end'] = true;
- if (isset($data[$v1['id']]) && $data[$v1['id']]) {
- $child['select'] = 1;
- }
- $result[$i]['children'][] = $child;
- }
- $i++;
- }
- }
- }
- return Dever::outDiy($result);
- }
- public function set_api()
- {
- $data = array();
- $data['id'] = Dever::input('id', 1);
- $data['role'] = Dever::input('role');
- if ($data['role'] == 'seller') {
- $data['name'] = '销售商';
- } else {
- $data['name'] = '配送商';
- }
- $data['host'] = Dever::url('lib/supplier.set?role=' . $data['role'], 'scm_role');
- $data['url'] = Dever::url('lib/supplier.get?id=' . $data['id'] . '&role=' . $data['role'], 'scm_role');
- $data['search'] = Dever::url('lib/supplier.search?yes='.$data['id'].'&role=' . $data['role'] . '&json=1', 'scm_role');
- $data['submit'] = Dever::url('lib/supplier.set_commit?json=1', 'scm_role');
- return Dever::render('set_supplier', $data);
- }
- public function set_commit_api()
- {
- $value = Dever::input('value');
- if (!$value) {
- Dever::alert('未选择');
- }
- $value = Dever::json_decode($value);
- $id = Dever::input('id');
- $role = Dever::input('role');
- $col = $role . '_id';
- $table = 'scm_role/' . $role . '_supplier';
- $where['option_' . $col] = $id;
- $where['set_state'] = 2;
- Dever::db($table)->updates($where);
- foreach ($value as $k => $v) {
- $w = array();
- $w['supplier_id'] = $v['id'];
- $w[$col] = $id;
- $info = Dever::db($table)->one($w);
- if (!$info) {
- Dever::db($table)->insert($w);
- } else {
- $w['where_id'] = $info['id'];
- $w['state'] = 1;
- Dever::db($table)->update($w);
- }
- }
- return 'refer';
- }
- }
|