Set.php 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. <?php
  2. namespace Agent\Lib;
  3. use Dever;
  4. # 批量设置商品
  5. class Set
  6. {
  7. public function __construct()
  8. {
  9. Dever::load('manage/auth.init');
  10. }
  11. # 获取商品列表
  12. public function goods_api()
  13. {
  14. $id = Dever::input('id', 1);
  15. return Dever::outDiy(Dever::load('goods/lib/set.getGoodsList', $id, 'role_id', 'setting/role_goods'));
  16. }
  17. # 设置商品
  18. public function home_api()
  19. {
  20. $data = array();
  21. $data['role_id'] = Dever::input('id', 1);
  22. $data['give'] = Dever::input('give', 1);
  23. $data['host'] = Dever::url('lib/set.home?id=' . $data['role_id'], 'agent');
  24. $data['url'] = Dever::url('lib/set.goods?id=' . $data['role_id'] . '&give=' . $data['give'], 'agent');
  25. $data['search'] = Dever::db('setting/role_goods')->config['set']['give'];
  26. $data['submit'] = Dever::url('lib/set.action_cmmmit?json=1', 'agent');
  27. return Dever::render('setGoods', $data);
  28. }
  29. # 设置生产能力
  30. public function action_cmmmit_api()
  31. {
  32. $goods = Dever::input('goods');
  33. if (!$goods) {
  34. Dever::alert('请传入商品');
  35. }
  36. $goods = Dever::json_decode($goods);
  37. $role_id = Dever::input('role_id');
  38. $give = Dever::input('give');
  39. $where['option_role_id'] = $role_id;
  40. $where['option_give'] = $give;
  41. $where['set_state'] = 2;
  42. Dever::db('setting/role_goods')->updates($where);
  43. foreach ($goods as $k => $v) {
  44. $temp = explode('-', $k);
  45. $goods_id = $temp[0];
  46. if (isset($temp[1])) {
  47. $sku_id = $temp[1];
  48. } else {
  49. $sku_id = -1;
  50. }
  51. if ($v['total'] <= 0) {
  52. continue;
  53. }
  54. $w = array();
  55. $w['goods_id'] = $goods_id;
  56. $w['role_id'] = $role_id;
  57. $w['sku_id'] = $sku_id;
  58. $w['give'] = $give;
  59. $info = Dever::db('setting/role_goods')->one($w);
  60. if ($v['del'] == 2) {
  61. if ($info) {
  62. Dever::db('setting/role_goods')->update(array('where_id' => $info['id'], 'state' => 2));
  63. }
  64. } else {
  65. $w['num'] = $v['total'];
  66. if (!$info) {
  67. Dever::db('setting/role_goods')->insert($w);
  68. } else {
  69. $w['where_id'] = $info['id'];
  70. $w['state'] = 1;
  71. Dever::db('setting/role_goods')->update($w);
  72. }
  73. }
  74. }
  75. return 'reload';
  76. }
  77. }