Set.php 2.9 KB

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