Order_set.php 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. <?php
  2. namespace Agent\Lib;
  3. use Dever;
  4. # 批量设置商品
  5. class Order_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('role_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['order_id'] = Dever::input('order_id');
  22. $data['role_id'] = Dever::input('role_id', 1);
  23. $data['give'] = Dever::input('give', 1);
  24. $data['host'] = Dever::url('lib/order_set.home?id=' . $data['role_id'], 'agent');
  25. $data['url'] = Dever::url('lib/order_set.goods?id=' . $data['role_id'] . '&give=' . $data['give'], 'agent');
  26. $data['search'] = Dever::db('setting/role_goods')->config['set']['give'];
  27. $data['submit'] = Dever::url('lib/order_set.action_cmmmit?json=1', 'agent');
  28. return Dever::render('setOrderGoods', $data);
  29. }
  30. # 设置生产能力
  31. public function action_cmmmit_api()
  32. {
  33. $goods = Dever::input('goods');
  34. if (!$goods) {
  35. Dever::alert('请传入商品');
  36. }
  37. $goods = Dever::json_decode($goods);
  38. $order_id = Dever::input('order_id');
  39. $where['option_order_id'] = $order_id;
  40. $where['set_state'] = 2;
  41. Dever::db('agent/order_goods')->updates($where);
  42. foreach ($goods as $k => $v) {
  43. $temp = explode('-', $k);
  44. $goods_id = $temp[0];
  45. if (isset($temp[1])) {
  46. $sku_id = $temp[1];
  47. } else {
  48. $sku_id = -1;
  49. }
  50. if ($v['total'] <= 0) {
  51. continue;
  52. }
  53. $w = array();
  54. $w['goods_id'] = $goods_id;
  55. $w['sku_id'] = $sku_id;
  56. $w['order_id'] = $order_id;
  57. if (isset($v['type']) && $v['type']) {
  58. $w['type'] = $v['type'];
  59. }
  60. $info = Dever::db('agent/order_goods')->one($w);
  61. if ($v['del'] == 2) {
  62. if ($info) {
  63. Dever::db('agent/order_goods')->update(array('where_id' => $info['id'], 'state' => 2));
  64. }
  65. } else {
  66. $w['num'] = $v['total'];
  67. if (!$info) {
  68. Dever::db('agent/order_goods')->insert($w);
  69. } else {
  70. $w['where_id'] = $info['id'];
  71. $w['state'] = 1;
  72. Dever::db('agent/order_goods')->update($w);
  73. }
  74. $wp = array();
  75. $wp['order_id'] = $order_id;
  76. $wp['status'] = 3;
  77. $process = Dever::db('agent/order_goods')->find($wp);
  78. if ($process) {
  79. $process['type'] = explode(',', $process['type']);
  80. $wp['audit'] = 1;
  81. $wp['type'] = '1,2';
  82. Dever::db('agent/order_goods')->insert($wp);
  83. } else {
  84. $wp['audit'] = 1;
  85. $wp['type'] = '1,2';
  86. Dever::db('agent/order_goods')->insert($wp);
  87. }
  88. }
  89. }
  90. return 'reload';
  91. }
  92. }