Queueu9.php 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. <?php defined('BASEPATH') OR exit('No direct script access allowed');
  2. /**
  3. * 该类执行队列使用
  4. */
  5. class Queueu9 extends Start_Controller {
  6. private $url = "http://git.wepolicy.cn/";
  7. private $api = 20250217;
  8. public function __construct(){
  9. parent::__construct();
  10. $this->load->_model("Model_zzquque_u9",'zzquque_u9');
  11. $this->load->_model("Model_aaconf","aaconf");
  12. $this->load->_model("Model_logic_u9xg",'logic_u9xg');
  13. $this->load->_model("Model_logic_order","logic_order");
  14. }
  15. //定义方法的调用规则 获取URI第二段值
  16. public function _remap($arg,$arg_array)
  17. {
  18. $api = $this->input->get('api',true);
  19. if($api != $this->api){
  20. exit('No direct script access allowed');
  21. }
  22. if($arg == 'xdls')//执行小单的流转到临时仓的队列
  23. {
  24. $this->_xdls();
  25. }
  26. else
  27. {
  28. $this->_index();
  29. }
  30. }
  31. public function _index(){
  32. //执行第一步的参数
  33. // $list = $this->zzquque_u9->find_all();
  34. // $do_list = [];
  35. // foreach($list as $k=>$v){
  36. // $tmp_info = $this->logic_order->getInfoByType($v['platform'],$v['order_no']);
  37. // $tmp_info['zq_u9_id'] = $v['id'];
  38. // $do_list[] = $tmp_info;
  39. // }
  40. // $this->logic_u9xg->xdlsOneStep($do_list);
  41. //执行第二步的参数
  42. // $list = $this->zzquque_u9->find_all("dc_status = 1 and xs_status = 1 and cg_status = 1 and type = 10 and update_time <=".(time() - 300));
  43. // $this->logic_u9xg->xdlsTwoStep($list);
  44. //执行第三部参数
  45. // $list = $this->zzquque_u9->find_all();
  46. // $this->logic_u9xg->xdlsThreeStep($list);
  47. //执行第四部的参数 生成销售单
  48. // $list = $this->zzquque_u9->find_all();
  49. // $do_list = [];
  50. // foreach($list as $k=>$v){
  51. // $tmp_info = $this->logic_order->getInfoByType($v['platform'],$v['order_no']);
  52. // $tmp_info['zq_u9_id'] = $v['id'];
  53. // $do_list[] = $tmp_info;
  54. // }
  55. // $this->logic_u9xg->xdlsFourStep($do_list);
  56. //执行第五步骤 审核销售单 并同时生成标准出货单
  57. // $list = $this->zzquque_u9->find_all(" xs_two_no = 'SO2502280045' ");
  58. // $this->logic_u9xg->xdlsFivestep($list);
  59. // $list = $this->zzquque_u9->find_all("");
  60. // $this->logic_u9xg->xdlsSixStep($list);
  61. //exit('No direct script access allowed index'."<br/>");
  62. }
  63. //执行小单的流转到临时仓的队列
  64. public function _xdls(){
  65. die;
  66. //第一步生成 许昌成品库的调出单
  67. $list = $this->zzquque_u9->find_all("type = 10 and dc_status = 0 and cg_status = 0 and xs_status = 0 ",'*','id asc',0,5);
  68. $do_list = [];
  69. foreach($list as $k=>$v){
  70. $tmp_info = $this->logic_order->getInfoByPlat($v['platform'],$v['order_no']);
  71. $tmp_info['zq_u9_id'] = $v['id'];
  72. $do_list[] = $tmp_info;
  73. }
  74. $this->logic_u9xg->xdlsOneStep($do_list);
  75. sleep(3);
  76. //第二步 提交审核第一步的采购单和销售单
  77. $list = $this->zzquque_u9->find_all("type = 10 and dc_status = 1 and cg_status = 1 and xs_status = 1 ");
  78. $this->logic_u9xg->xdlsTwoStep($list);
  79. //第三步 查询调出单生成的调入单是否生成 如果生成了就审核 如果没生成 说明异常了 这种都是按步骤走的
  80. $list = $this->zzquque_u9->find_all("type = 10 and dc_status = 3 and cg_status = 3 and xs_status = 3 and dr_status = 0");
  81. $this->logic_u9xg->xdlsThreeStep($list);
  82. //第四步 建立香港的销售单 标准出库单有源的需要先审核 先创建销售单
  83. $list = $this->zzquque_u9->find_all("type = 10 and dc_status = 3 and cg_status = 3 and xs_status = 3 and dr_status = 3 and xs_two_status = 0 ");
  84. $do_list = [];
  85. foreach($list as $k=>$v){
  86. $tmp_info = $this->logic_order->getInfoByPlat($v['platform'],$v['order_no']);
  87. $tmp_info['zq_u9_id'] = $v['id'];
  88. $tmp_info['dc_no'] = $v['dc_no'];
  89. $do_list[] = $tmp_info;
  90. }
  91. $this->logic_u9xg->xdlsFourStep($do_list);
  92. //执行第五步骤 审核销售单 并同时生成标准出货单
  93. $list = $this->zzquque_u9->find_all("type = 10 and dc_status = 3 and cg_status = 3 and xs_status = 3 and dr_status = 3 and xs_two_status = 1 and bzch_status = 0 ");
  94. if(!empty($list)){
  95. $this->logic_u9xg->xdlsFiveStep($list);
  96. }
  97. sleep(3);
  98. $list = $this->zzquque_u9->find_all("type = 10 and dc_status = 3 and cg_status = 3 and xs_status = 3 and dr_status = 3 and xs_two_status = 3 and bzch_status = 1 ");
  99. $this->logic_u9xg->xdlsSixStep($list);
  100. }
  101. }