Systembound.php 41 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267
  1. <?php defined('BASEPATH') OR exit('No direct script access allowed');
  2. header("Access-Control-Allow-Origin: *");
  3. class Systembound extends Start_Controller {
  4. public function __construct(){
  5. parent::__construct();
  6. $this->load->library('session');
  7. $this->load->_model('Model_outbound','outbound');
  8. $this->load->_model('Model_excel','excel');
  9. $this->load->_model('Model_express','express');
  10. $this->load->_model('Model_shop','shop');
  11. $this->load->_model('Model_warehouse','warehouse');
  12. $this->load->_model('Model_fullorder','fullorder');
  13. $this->load->_model('Model_fullordertt','fullordertt');
  14. $this->load->_model('Model_fullorderamz','fullorderamz');
  15. $this->load->_model('Model_fullordersmt','fullordersmt');
  16. $this->load->_model('Model_fullorderxw','fullorderxw');
  17. }
  18. //定义方法的调用规则 获取URI第二段值
  19. public function _remap($arg,$arg_array)
  20. {
  21. if($arg == 'data')
  22. {
  23. $this->_data();
  24. }
  25. else if($arg == 'out')
  26. {
  27. $this->_out();
  28. }
  29. else if($arg == 'del')
  30. {
  31. $this->_del();
  32. }
  33. else if($arg == 'add')
  34. {
  35. $this->_add();
  36. }
  37. else if($arg == 'excel')
  38. {
  39. $this->_excel();
  40. }
  41. else
  42. {
  43. $this->_index();
  44. }
  45. }
  46. public function _index()
  47. {
  48. if(isset($_SESSION['api']))
  49. {
  50. $user = $this->user->get_api($_SESSION['api']);
  51. $usp = $user;
  52. $fgshop = "";$sid = "";$wid="";$wtype="";
  53. $usersp = explode('|',trim($user['shop'],'|'));
  54. $userwh = explode('|',trim($user['warehouse'],'|'));
  55. foreach ($usersp as $value)
  56. {
  57. $fgshop .= " shop = ".$value." or";
  58. $sid .= " id = ".$value." or";
  59. }
  60. foreach ($userwh as $value)
  61. {
  62. $wid .= " id = ".$value." or";
  63. $wtype .= " type = ".$value." or";
  64. }
  65. }
  66. if(isset($_SESSION['api']))
  67. {
  68. $wlshop = $this->shop->find_all('1=1 and '.rtrim($sid,'or'));
  69. $warehouse = $this->warehouse->find_all('1=1 and '.rtrim($wid,'or'),"*","px asc");
  70. $this->data['wlshop'] = $wlshop;
  71. $this->data['warehouse'] = $warehouse;
  72. $this->data['vip'] = $user['vip'];
  73. }
  74. $this->_Template('systembound',$this->data);
  75. }
  76. public function _data()
  77. {
  78. $post = $this->input->post(NULL, TRUE);
  79. if(isset($post['page']))
  80. {
  81. $api = $this->input->post('api',true);
  82. $page = $this->input->post('page',true);
  83. $perpage = $this->input->post('perpage',true);
  84. $number = $this->input->post('number',true);
  85. $waybill = $this->input->post('waybill',true);
  86. $express = $this->input->post('express',true);
  87. $type = $this->input->post('type',true);
  88. $timetk = $this->input->post('timetk',true);
  89. $timetj = $this->input->post('timetj',true);
  90. $timetk = strtotime($timetk);
  91. $timetj = strtotime($timetj);
  92. $where = "type != 0";
  93. if(isset($_SESSION['api']))
  94. {
  95. if($type)
  96. {
  97. $where .= " and type = '$type'";
  98. }
  99. else
  100. {
  101. $uw = '';
  102. $u = $this->user->get_api($_SESSION['api']);
  103. $u['warehouse'] = explode('|',trim($u['warehouse'],'|'));
  104. foreach ($u['warehouse'] as $v)
  105. {
  106. $uw .= " type = '$v' or";
  107. }
  108. $uw = rtrim($uw,'or');
  109. $uw = " and (".ltrim($uw,' ').")";
  110. $where .= $uw;
  111. }
  112. }
  113. if($timetk && $timetj)
  114. {
  115. $where .= " and time > '$timetk' and time < '$timetj'";
  116. }
  117. if($number)
  118. {
  119. $where .= " and number = '$number'";
  120. }
  121. if($waybill)
  122. {
  123. $where .= " and waybill = '$waybill'";
  124. }
  125. if($express)
  126. {
  127. $where .= " and express = '$express'";
  128. }
  129. //数据排序
  130. $order_str = "time desc";
  131. if(empty($page))
  132. {
  133. $start = 0;
  134. $perpage = 1;
  135. }
  136. else
  137. {
  138. $start = ($page - 1)*$perpage;
  139. }
  140. //取得信息列表
  141. $info_list = $this->outbound->find_all($where,'id,type,express,number,waybill,time',$order_str,$start,$perpage);
  142. //格式化数据
  143. foreach ($info_list as $key=>$value)
  144. {
  145. if($value['waybill'] == '0')
  146. {
  147. $info_list[$key]['waybill'] = "无";
  148. }
  149. if($value['express'] == '0')
  150. {
  151. $info_list[$key]['express'] = "无";
  152. }
  153. else
  154. {
  155. $express = $this->express->read($value['express']);
  156. $info_list[$key]['express'] = $express['servicename'];
  157. }
  158. $warehouse = $this->warehouse->read($value['type']);
  159. $info_list[$key]['type'] = $warehouse['title'];
  160. $info_list[$key]['time'] = '<em class="t">'.date('Y-m-d H:i:s',$value['time']).'</em>';
  161. }
  162. $ex = array();
  163. $ed = $this->outbound->find_all($where,'express');
  164. foreach ($ed as $key=>$value)
  165. {
  166. if(isset($ex[$value['express']]))
  167. {
  168. $ex[$value['express']] += 1;
  169. }
  170. else
  171. {
  172. $ex[$value['express']] = 1;
  173. }
  174. }
  175. $exdata = '';
  176. foreach ($ex as $k=>$v)
  177. {
  178. $e = $this->express->read($k);
  179. $exdata .= "<li>".$e['servicename'].":".$v."单</li>";
  180. }
  181. $datacount = $this->outbound->find_count($where." and gtime = '".date('Ymd',time())."'");
  182. $total = $this->outbound->find_count($where);
  183. $pagenum = ceil($total/$perpage);
  184. $over = $total-($start+$perpage);
  185. $rows = array('total'=>$total,'over'=>$over,'pagenum'=>$pagenum,'rows'=>($info_list),'datacount'=>$datacount,'exdata'=>$exdata);
  186. echo json_encode($rows);exit;
  187. }
  188. }
  189. public function _out_bak()
  190. {
  191. $post = $this->input->post(NULL, TRUE);
  192. if(isset($post['number']))
  193. {
  194. $where = "gtime = '".date('Ymd',time())."'";
  195. $number = $this->input->post('number',true);
  196. $type = $this->input->post('type',true);
  197. $express = $this->input->post('express',true);
  198. if($_SESSION['api'])
  199. {
  200. if($type)
  201. {
  202. $where .= " and type = '$type'";
  203. }
  204. else
  205. {
  206. $uw = '';
  207. $u = $this->user->get_api($_SESSION['api']);
  208. $u['warehouse'] = explode('|',trim($u['warehouse'],'|'));
  209. foreach ($u['warehouse'] as $v)
  210. {
  211. $uw .= " type = '$v' or";
  212. }
  213. $uw = rtrim($uw,'or');
  214. $uw = " and (".ltrim($uw,' ').")";
  215. $where .= $uw;
  216. }
  217. }
  218. if(!$number)
  219. {
  220. echo json_encode(array('msg'=>'未扫入数据!','success'=>false));exit;
  221. }
  222. if(!$type)
  223. {
  224. echo json_encode(array('msg'=>'请选择需要录入数据的仓库!','success'=>false));exit;
  225. }
  226. if(!$express)
  227. {
  228. echo json_encode(array('msg'=>'请选择需要录入的快递!','success'=>false));exit;
  229. }
  230. $sex = $this->express->read($express);
  231. if(stripos($number,'-') === false)
  232. {
  233. if(substr($number,0,3) == '788' && substr($number,-4,4) == '0430')//Fedex联邦
  234. {
  235. $number = substr($number,0,12);
  236. }
  237. if(strlen($number) == '34')//联邦杭州超长运单截取
  238. {
  239. $number = substr($number,22,12);
  240. }
  241. /**
  242. $ex = array('DHL'=>10,'FEDEX'=>12,'FEDEXGF'=>12,'UPS'=>18,'GES'=>17,'TNT'=>9,'ARAMEX'=>11,'EMS_ZX_ZX_US'=>13);
  243. if(isset($ex[$sex['printcode']]))
  244. {
  245. if(strlen($number) != $ex[$sex['printcode']])
  246. {
  247. echo json_encode(array('msg'=>'运单号错误,此单请重新录入运单号!','success'=>false));exit;
  248. }
  249. }
  250. **/
  251. if(strlen($number) == 12 && $sex['printcode'] != 'FEDEX' && $sex['printcode'] != 'FEDEXGF')
  252. {
  253. echo json_encode(array('msg'=>'运单号和快递类型不符!F','success'=>false));exit;
  254. }
  255. if(strlen($number) == 10 && $sex['printcode'] != 'DHL' && $sex['printcode'] != 'DHLUSA')
  256. {
  257. echo json_encode(array('msg'=>'运单号和快递类型不符!D','success'=>false));exit;
  258. }
  259. if(strlen($number) == 18 && $sex['printcode'] != 'UPS' && $sex['printcode'] != 'YunExpress')
  260. {
  261. echo json_encode(array('msg'=>'运单号和快递类型不符!U'.$sex['printcode'],'success'=>false));exit;
  262. }
  263. $yd = $this->fullorder->find_all("waybill = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  264. if(isset($yd[0]['number']))
  265. {
  266. $number = $yd[0]['number'];
  267. if($yd[0]['express'] != $express && $yd[0]['express'] != 31)
  268. {
  269. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  270. }
  271. }
  272. else
  273. {
  274. $yd = $this->fullordersmt->find_all("waybill = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  275. if(isset($yd[0]['number']))
  276. {
  277. $number = $yd[0]['number'];
  278. if($yd[0]['express'] != $express && $yd[0]['express'] != 31)
  279. {
  280. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  281. }
  282. }
  283. else
  284. {
  285. $yd = $this->fullordertt->find_all("waybill = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  286. if(isset($yd[0]['number']))
  287. {
  288. $number = $yd[0]['number'];
  289. if($yd[0]['express'] != $express && $yd[0]['express'] != 31)
  290. {
  291. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  292. }
  293. }
  294. else
  295. {
  296. $yd = $this->fullorderamz->find_all("waybill = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  297. if(isset($yd[0]['number']))
  298. {
  299. $number = $yd[0]['number'];
  300. if($yd[0]['express'] != $express && $yd[0]['express'] != 31)
  301. {
  302. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  303. }
  304. }
  305. else
  306. {
  307. $yd = $this->fullorderxw->find_all("waybill = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  308. if(isset($yd[0]['number']))
  309. {
  310. $number = $yd[0]['number'];
  311. if($yd[0]['express'] != $express && $yd[0]['express'] != 31)
  312. {
  313. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  314. }
  315. }
  316. else
  317. {
  318. echo json_encode(array('msg'=>'系统中未查到此运单,请确认!'.$number,'success'=>false));exit;
  319. }
  320. }
  321. }
  322. }
  323. }
  324. /**
  325. if($yd[0]['printtype'] != 1)
  326. {
  327. echo json_encode(array('msg'=>'请扫描正确的运单号!','success'=>false));exit;
  328. }
  329. **/
  330. $nu = $this->outbound->get_number($number);
  331. if($nu)
  332. {
  333. echo json_encode(array('msg'=>'错误!此编号'.date('Ymd',$nu['time']).'已录入!','success'=>false));exit;
  334. }
  335. if($this->outbound->insert(array('type'=>$type,'number'=>$number,'express'=>$express,'gtime'=>date('Ymd',time()),'time'=>time())))
  336. {
  337. $data = $this->outbound->find_count($where);
  338. echo json_encode(array('msg'=>$data,'music'=>'1','success'=>true));exit;
  339. }
  340. else
  341. {
  342. echo json_encode(array('msg'=>'数据写入失败,请重试!','success'=>false));exit;
  343. }
  344. }
  345. else
  346. {
  347. $dd = $this->fullorder->find_all("number = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  348. if(isset($dd[0]['number']))
  349. {
  350. if($dd[0]['express'] != $express)
  351. {
  352. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  353. }
  354. }
  355. else
  356. {
  357. $dd = $this->fullordersmt->find_all("number = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  358. if(isset($dd[0]['number']))
  359. {
  360. $number = $dd[0]['number'];
  361. if($dd[0]['express'] != $express)
  362. {
  363. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  364. }
  365. }
  366. else
  367. {
  368. $dd = $this->fullordertt->find_all("number = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  369. if(isset($dd[0]['number']))
  370. {
  371. $number = $dd[0]['number'];
  372. if($dd[0]['express'] != $express)
  373. {
  374. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  375. }
  376. }
  377. else
  378. {
  379. $dd = $this->fullorderamz->find_all("number = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  380. if(isset($dd[0]['number']))
  381. {
  382. $number = $dd[0]['number'];
  383. if($dd[0]['express'] != $express)
  384. {
  385. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  386. }
  387. }
  388. else
  389. {
  390. $dd = $this->fullorderxw->find_all("number = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  391. if(isset($dd[0]['number']))
  392. {
  393. $number = $dd[0]['number'];
  394. if($dd[0]['express'] != $express)
  395. {
  396. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  397. }
  398. }
  399. else
  400. {
  401. echo json_encode(array('msg'=>'系统中未查到此编号,请确认!','success'=>false));exit;
  402. }
  403. }
  404. }
  405. }
  406. }
  407. if($dd[0]['printtype'] != 2)
  408. {
  409. echo json_encode(array('msg'=>'请扫描正确的条码!','success'=>false));exit;
  410. }
  411. $nu = $this->outbound->get_number($number);
  412. if($nu)
  413. {
  414. echo json_encode(array('msg'=>'错误!此编号'.date('Ymd',$nu['time']).'已录入!','success'=>false));exit;
  415. }
  416. if($this->outbound->insert(array('type'=>$type,'number'=>$number,'express'=>$express,'gtime'=>date('Ymd',time()),'time'=>time())))
  417. {
  418. $data = $this->outbound->find_count($where);
  419. echo json_encode(array('msg'=>$data,'music'=>'1','success'=>true));exit;
  420. }
  421. else
  422. {
  423. echo json_encode(array('msg'=>'数据写入失败,请重试!','success'=>false));exit;
  424. }
  425. }
  426. }
  427. }
  428. public function _outxxxxxx()
  429. {
  430. $post = $this->input->post(NULL, TRUE);
  431. if(isset($post['number']))
  432. {
  433. $where = "gtime = '".date('Ymd',time())."'";
  434. $number = $this->input->post('number',true);
  435. $id = $this->input->post('id',true);
  436. $type = $this->input->post('type',true);
  437. $express = $this->input->post('express',true);
  438. if($id)
  439. {
  440. if($type)
  441. {
  442. $where .= " and type = '$type'";
  443. }
  444. else
  445. {
  446. $uw = '';
  447. $u = $this->user->get_api($id);
  448. $u['warehouse'] = explode('|',trim($u['warehouse'],'|'));
  449. foreach ($u['warehouse'] as $v)
  450. {
  451. $uw .= " type = '$v' or";
  452. }
  453. $uw = rtrim($uw,'or');
  454. $uw = " and (".ltrim($uw,' ').")";
  455. $where .= $uw;
  456. }
  457. }
  458. if(!$number)
  459. {
  460. echo json_encode(array('msg'=>'未扫入数据!','success'=>false));exit;
  461. }
  462. if(!$type)
  463. {
  464. echo json_encode(array('msg'=>'请选择需要录入数据的仓库!','success'=>false));exit;
  465. }
  466. if(!$express)
  467. {
  468. echo json_encode(array('msg'=>'请选择需要录入的快递!','success'=>false));exit;
  469. }
  470. $nu = $this->outbound->get_number($number);
  471. if($nu)
  472. {
  473. echo json_encode(array('msg'=>'错误!此编号'.date('Ymd',$nu['time']).'已录入!','success'=>false));exit;
  474. }
  475. $wa = $this->outbound->get_waybill($number);
  476. if($wa)
  477. {
  478. echo json_encode(array('msg'=>'错误!此运单号'.date('Ymd',$wa['time']).'已录入!','success'=>false));exit;
  479. }
  480. $jd = $this->outbound->find_all($where,'*','id desc');
  481. if(!isset($jd[0]) || $jd[0]['waybill'] != '')
  482. {
  483. $pd = explode('-',$number);
  484. if(!isset($pd[1]) || !isset($pd[2]))
  485. {
  486. echo json_encode(array('msg'=>'编号不正确,请重试!','success'=>false));exit;
  487. }
  488. if(strlen($pd[1]) == '5' && strlen($pd[2]) == '3')
  489. {
  490. if($this->outbound->insert(array('type'=>$type,'number'=>$number,'express'=>$express,'gtime'=>date('Ymd',time()),'time'=>time())))
  491. {
  492. $data = $this->outbound->find_count($where);
  493. echo json_encode(array('msg'=>$data,'music'=>'1','success'=>true));exit;
  494. }
  495. else
  496. {
  497. echo json_encode(array('msg'=>'数据写入失败,请重试!','success'=>false));exit;
  498. }
  499. }
  500. else
  501. {
  502. echo json_encode(array('msg'=>'编号不正确!','success'=>false));exit;
  503. }
  504. }
  505. else
  506. {
  507. if(stripos($number,'-') !== false)
  508. {
  509. echo json_encode(array('msg'=>'请扫描'.$jd[0]['number'].'对应的运单号!','success'=>false));exit;
  510. }
  511. if(substr($number,0,3) == '788' && substr($number,-4,4) == '0430')//Fedex联邦
  512. {
  513. $number = substr($number,0,12);
  514. }
  515. if(strlen($number) == '34')//联邦杭州超长运单截取
  516. {
  517. $number = substr($number,22,12);
  518. }
  519. $sex = $this->express->read($express);
  520. $ex = array('DHL'=>10,'FEDEX'=>12,'FEDEXGF'=>12,'UPS'=>18,'GES'=>17,'TNT'=>9,'ARAMEX'=>11,'EMS_ZX_ZX_US'=>13);
  521. if(isset($ex[$sex['printcode']]))
  522. {
  523. if(strlen($number) != $ex[$sex['printcode']])
  524. {
  525. echo json_encode(array('msg'=>'运单号错误,此单请重新录入运单号!','success'=>false));exit;
  526. }
  527. }
  528. if($this->outbound->save(array('waybill'=>$number),$jd[0]['id']))
  529. {
  530. $data = $this->outbound->find_count($where);
  531. echo json_encode(array('msg'=>$data,'music'=>'1','success'=>true));exit;
  532. }
  533. else
  534. {
  535. echo json_encode(array('msg'=>'数据写入失败,请重试!','success'=>false));exit;
  536. }
  537. }
  538. }
  539. }
  540. public function _excel()
  541. {
  542. if(isset($_GET['fexcel']))
  543. {
  544. $timetk = $this->input->get('timetk',true);
  545. $timetj = $this->input->get('timetj',true);
  546. $library = $this->input->get('library',true);
  547. $type = $this->input->get('type',true);
  548. $number = $this->input->get('number',true);
  549. $waybill = $this->input->get('waybill',true);
  550. $express = $this->input->get('express',true);
  551. $timetk = strtotime($timetk);
  552. $timetj = strtotime($timetj);
  553. $where = "type != 0";
  554. if($timetk && $timetj)
  555. {
  556. $where .= " and time > '$timetk' and time < '$timetj'";
  557. }
  558. if(isset($_SESSION['api']))
  559. {
  560. if($type)
  561. {
  562. $where .= " and type = '$type'";
  563. }
  564. else
  565. {
  566. $uw = '';
  567. $u = $this->user->get_api($_SESSION['api']);
  568. $u['warehouse'] = explode('|',trim($u['warehouse'],'|'));
  569. foreach ($u['warehouse'] as $v)
  570. {
  571. $uw .= " type = '$v' or";
  572. }
  573. $uw = rtrim($uw,'or');
  574. $uw = " and (".ltrim($uw,' ').")";
  575. $where .= $uw;
  576. }
  577. }
  578. else
  579. {
  580. echo json_encode(array('msg'=>'导出失败,请重新登陆!','success'=>false));exit;
  581. }
  582. if($number)
  583. {
  584. $where .= " and number = '$number'";
  585. }
  586. if($waybill)
  587. {
  588. $where .= " and waybill = '$waybill'";
  589. }
  590. if($express)
  591. {
  592. $where .= " and express = '$express'";
  593. }
  594. $data = array();
  595. $datafy = array();
  596. $j = 0;
  597. $info_list = $this->outbound->find_all($where,'number,waybill','time asc');
  598. foreach ($info_list as $key=>$value)
  599. {
  600. $datafy[] = array($value['number'],$value['waybill']);
  601. if($j == $library-1)
  602. {
  603. $data[] = $datafy;
  604. $j = 0;$datafy = array();
  605. }
  606. else
  607. {
  608. $j++;
  609. }
  610. }
  611. $data[] = $datafy;
  612. //格式化数据
  613. $i = 0;$cpexcel = array();
  614. $title = date('Ymd',time())."发货统计信息"; $td = '';
  615. for($i=0;$i<ceil(count($info_list)/$library);$i++)
  616. {
  617. $td .= "<td>组".($i+1)."</td><td></td>";
  618. }
  619. $titlename = "<table border=1>
  620. <tr>
  621. ".$td."
  622. </tr>
  623. </table>";
  624. $filename = $title.".xls";
  625. $this->excel->get_fz6($data,$titlename,$filename);
  626. }
  627. }
  628. public function _add()
  629. {
  630. $post = $this->input->post(NULL, TRUE);
  631. if(isset($post['number']))
  632. {
  633. $where = "gtime = '".date('Ymd',time())."'";
  634. $number = $this->input->post('number',true);
  635. //$waybill = $this->input->post('waybill',true);
  636. $id = $this->input->post('id',true);
  637. $type = $this->input->post('type',true);
  638. $express = $this->input->post('express',true);
  639. $time = $this->input->post('time',true);
  640. if($time)
  641. {
  642. $time = strtotime($time);
  643. }
  644. else
  645. {
  646. $time = time();
  647. }
  648. if($id)
  649. {
  650. if($type)
  651. {
  652. $where .= " and type = '$type'";
  653. }
  654. else
  655. {
  656. $uw = '';
  657. $u = $this->user->get_api($id);
  658. $u['warehouse'] = explode('|',trim($u['warehouse'],'|'));
  659. foreach ($u['warehouse'] as $v)
  660. {
  661. $uw .= " type = '$v' or";
  662. }
  663. $uw = rtrim($uw,'or');
  664. $uw = " and (".ltrim($uw,' ').")";
  665. $where .= $uw;
  666. }
  667. }
  668. /**
  669. if(!$number)
  670. {
  671. echo json_encode(array('msg'=>'编号不能为空!','success'=>false));exit;
  672. }
  673. if(!$waybill)
  674. {
  675. //echo json_encode(array('msg'=>'运单号不能为空!','success'=>false));exit;
  676. }
  677. if(!$type)
  678. {
  679. echo json_encode(array('msg'=>'请选择需要录入数据的仓库!','success'=>false));exit;
  680. }
  681. if(!$express)
  682. {
  683. echo json_encode(array('msg'=>'请选择需要录入的快递!','success'=>false));exit;
  684. }
  685. $nu = $this->outbound->get_number($number);
  686. if($nu)
  687. {
  688. echo json_encode(array('msg'=>'错误!此编号'.date('Ymd',$nu['time']).'已录入!','success'=>false));exit;
  689. }
  690. if($waybill)
  691. {
  692. $wa = $this->outbound->get_waybill($waybill);
  693. if($wa)
  694. {
  695. echo json_encode(array('msg'=>'错误!此运单号'.date('Ymd',$wa['time']).'已录入!','success'=>false));exit;
  696. }
  697. $sex = $this->express->read($express);
  698. $ex = array('DHL'=>10,'FEDEX'=>12,'FEDEXGF'=>12,'UPS'=>18,'GES'=>17,'TNT'=>9,'ARAMEX'=>11,'EMS_ZX_ZX_US'=>13);
  699. if(isset($ex[$sex['printcode']]))
  700. {
  701. if(strlen($waybill) != $ex[$sex['printcode']])
  702. {
  703. echo json_encode(array('msg'=>'运单号错误,此单请重新录入运单号!','success'=>false));exit;
  704. }
  705. }
  706. }
  707. **/
  708. if(!$number)
  709. {
  710. echo json_encode(array('msg'=>'未扫入数据!','success'=>false));exit;
  711. }
  712. if(!$type)
  713. {
  714. echo json_encode(array('msg'=>'请选择需要录入数据的仓库!','success'=>false));exit;
  715. }
  716. if(!$express)
  717. {
  718. echo json_encode(array('msg'=>'请选择需要录入的快递!','success'=>false));exit;
  719. }
  720. $sex = $this->express->read($express);
  721. if(stripos($number,'-') === false)
  722. {
  723. if(substr($number,0,3) == '788' && substr($number,-4,4) == '0430')//Fedex联邦
  724. {
  725. $number = substr($number,0,12);
  726. }
  727. if(strlen($number) == '34')//联邦杭州超长运单截取
  728. {
  729. $number = substr($number,22,12);
  730. }
  731. /**
  732. $ex = array('DHL'=>10,'FEDEX'=>12,'FEDEXGF'=>12,'UPS'=>18,'GES'=>17,'TNT'=>9,'ARAMEX'=>11,'EMS_ZX_ZX_US'=>13);
  733. if(isset($ex[$sex['printcode']]))
  734. {
  735. if(strlen($number) != $ex[$sex['printcode']])
  736. {
  737. echo json_encode(array('msg'=>'运单号错误,此单请重新录入运单号!','success'=>false));exit;
  738. }
  739. }
  740. **/
  741. if(strlen($number) == 12 && $sex['printcode'] != 'FEDEX' && $sex['printcode'] != 'FEDEXGF')
  742. {
  743. echo json_encode(array('msg'=>'运单号和快递类型不符!F','success'=>false));exit;
  744. }
  745. if(strlen($number) == 10 && $sex['printcode'] != 'DHL' && $sex['printcode'] != 'DHLUSA')
  746. {
  747. echo json_encode(array('msg'=>'运单号和快递类型不符!D','success'=>false));exit;
  748. }
  749. if(strlen($number) == 18 && $sex['printcode'] != 'UPS')
  750. {
  751. echo json_encode(array('msg'=>'运单号和快递类型不符!U','success'=>false));exit;
  752. }
  753. $tmp_waybill = $number;
  754. $yd = $this->fullorder->find_all("waybill = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  755. if(isset($yd[0]['number']))
  756. {
  757. $number = $yd[0]['number'];
  758. if($yd[0]['express'] != $express && $yd[0]['express'] != 31)
  759. {
  760. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  761. }
  762. }
  763. else
  764. {
  765. $yd = $this->fullordersmt->find_all("waybill = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  766. if(isset($yd[0]['number']))
  767. {
  768. $number = $yd[0]['number'];
  769. if($yd[0]['express'] != $express && $yd[0]['express'] != 31)
  770. {
  771. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  772. }
  773. if($yd[0]['express'] != 24 && $yd[0]['express'] == 31)
  774. {
  775. echo json_encode(array('msg'=>'请选择杭州联邦快递方式录入','success'=>false));exit;
  776. }
  777. }
  778. else
  779. {
  780. $yd = $this->fullordertt->find_all("waybill = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  781. if(isset($yd[0]['number']))
  782. {
  783. $number = $yd[0]['number'];
  784. if($yd[0]['express'] != $express && $yd[0]['express'] != 31)
  785. {
  786. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  787. }
  788. if($yd[0]['express'] != 24 && $yd[0]['express'] == 31)
  789. {
  790. echo json_encode(array('msg'=>'请选择杭州联邦快递方式录入','success'=>false));exit;
  791. }
  792. }
  793. else
  794. {
  795. $yd = $this->fullorderamz->find_all("waybill = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  796. if(isset($yd[0]['number']))
  797. {
  798. $number = $yd[0]['number'];
  799. if($yd[0]['express'] != $express && $yd[0]['express'] != 31)
  800. {
  801. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  802. }
  803. if($yd[0]['express'] != 24 && $yd[0]['express'] == 31)
  804. {
  805. echo json_encode(array('msg'=>'请选择杭州联邦快递方式录入','success'=>false));exit;
  806. }
  807. }
  808. else
  809. {
  810. $yd = $this->fullorderxw->find_all("waybill = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  811. if(isset($yd[0]['number']))
  812. {
  813. $number = $yd[0]['number'];
  814. if($yd[0]['express'] != $express && $yd[0]['express'] != 31)
  815. {
  816. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  817. }
  818. if($yd[0]['express'] != 24 && $yd[0]['express'] == 31)
  819. {
  820. echo json_encode(array('msg'=>'请选择杭州联邦快递方式录入','success'=>false));exit;
  821. }
  822. }
  823. else
  824. {
  825. echo json_encode(array('msg'=>'系统中未查到此运单,请确认!'.$number,'success'=>false));exit;
  826. }
  827. }
  828. }
  829. }
  830. }
  831. /**
  832. if($yd[0]['printtype'] != 1)
  833. {
  834. echo json_encode(array('msg'=>'请扫描正确的运单号!','success'=>false));exit;
  835. }
  836. **/
  837. $nu = $this->outbound->get_number($number);
  838. if($nu)
  839. {
  840. echo json_encode(array('msg'=>'错误!此编号'.date('Ymd',$nu['time']).'已录入!','success'=>false));exit;
  841. }
  842. if($this->outbound->insert(array('type'=>$type,'number'=>$number,'waybill'=>$tmp_waybill,'express'=>$express,'gtime'=>date('Ymd',time()),'time'=>$time)))
  843. {
  844. $data = $this->outbound->find_count($where);
  845. echo json_encode(array('msg'=>'提交成功,数量:'.$data,'music'=>'1','success'=>true));exit;
  846. }
  847. else
  848. {
  849. echo json_encode(array('msg'=>'数据写入失败,请重试!','success'=>false));exit;
  850. }
  851. }
  852. else
  853. {
  854. $dd = $this->fullorder->find_all("number = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  855. if(isset($dd[0]['number']))
  856. {
  857. if($dd[0]['express'] != $express)
  858. {
  859. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  860. }
  861. }
  862. else
  863. {
  864. $dd = $this->fullordersmt->find_all("number = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  865. if(isset($dd[0]['number']))
  866. {
  867. $number = $dd[0]['number'];
  868. if($dd[0]['express'] != $express)
  869. {
  870. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  871. }
  872. }
  873. else
  874. {
  875. $dd = $this->fullordertt->find_all("number = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  876. if(isset($dd[0]['number']))
  877. {
  878. $number = $dd[0]['number'];
  879. if($dd[0]['express'] != $express)
  880. {
  881. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  882. }
  883. }
  884. else
  885. {
  886. $dd = $this->fullorderamz->find_all("number = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  887. if(isset($dd[0]['number']))
  888. {
  889. $number = $dd[0]['number'];
  890. if($dd[0]['express'] != $express)
  891. {
  892. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  893. }
  894. }
  895. else
  896. {
  897. $dd = $this->fullorderxw->find_all("number = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  898. if(isset($dd[0]['number']))
  899. {
  900. $number = $dd[0]['number'];
  901. if($dd[0]['express'] != $express)
  902. {
  903. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  904. }
  905. }
  906. else
  907. {
  908. echo json_encode(array('msg'=>'系统中未查到此编号,请确认!','success'=>false));exit;
  909. }
  910. }
  911. }
  912. }
  913. }
  914. $tmp_waybill = "";
  915. if(isset($dd[0]['waybill'])){
  916. $tmp_waybill= $dd[0]['waybill'];
  917. }
  918. if($dd[0]['printtype'] != 2)
  919. {
  920. echo json_encode(array('msg'=>'请扫描正确的条码!','success'=>false));exit;
  921. }
  922. $nu = $this->outbound->get_number($number);
  923. if($nu)
  924. {
  925. echo json_encode(array('msg'=>'错误!此编号'.date('Ymd',$nu['time']).'已录入!','success'=>false));exit;
  926. }
  927. if($this->outbound->insert(array('type'=>$type,'number'=>$number,'waybill'=>$tmp_waybill,'express'=>$express,'gtime'=>date('Ymd',time()),'time'=>$time)))
  928. {
  929. $data = $this->outbound->find_count($where);
  930. echo json_encode(array('msg'=>'添加成功!','success'=>true));exit;
  931. }
  932. else
  933. {
  934. echo json_encode(array('msg'=>'数据写入失败,请重试!','success'=>false));exit;
  935. }
  936. }
  937. /**
  938. if($this->outbound->insert(array('type'=>$type,'number'=>$number,'waybill'=>$waybill,'express'=>$express,'gtime'=>date('Ymd',$time),'time'=>$time+1)))
  939. {
  940. echo json_encode(array('msg'=>'添加成功!','success'=>true));exit;
  941. }
  942. **/
  943. }
  944. }
  945. public function _del()
  946. {
  947. $post = $this->input->post(NULL, TRUE);
  948. if(isset($post['delarr']))
  949. {
  950. $id_arr = $this->input->post('delarr');
  951. $id_arr = explode(',',rtrim($id_arr,','));
  952. if(!$id_arr)
  953. {
  954. echo json_encode(array('msg'=>'未选择需要删除的内容!','success'=>false));exit;
  955. }
  956. //循环删除记录
  957. $a=0;
  958. foreach ($id_arr as $v)
  959. {
  960. if($this->outbound->remove($v))
  961. {
  962. $a++;
  963. }
  964. }
  965. if($a == count($id_arr))
  966. {
  967. $data = $this->outbound->find_count("gtime = '".date('Ymd',time())."'");
  968. echo json_encode(array('del'=>$id_arr,'data'=>$data,'msg'=>'删除成功!','success'=>true));
  969. }
  970. else
  971. {
  972. echo json_encode(array('del'=>$id_arr,'msg'=>'部分记录删除失败,请查询确认!','success'=>true));
  973. }
  974. }
  975. }
  976. public function _ex()
  977. {
  978. }
  979. public function _out()
  980. {
  981. $post = $this->input->post(NULL, TRUE);
  982. if(isset($post['number']))
  983. {
  984. $where = "gtime = '".date('Ymd',time())."'";
  985. $number = $this->input->post('number',true);
  986. $type = $this->input->post('type',true);
  987. $express = $this->input->post('express',true);
  988. if($_SESSION['api'])
  989. {
  990. if($type)
  991. {
  992. $where .= " and type = '$type'";
  993. }
  994. else
  995. {
  996. $uw = '';
  997. $u = $this->user->get_api($_SESSION['api']);
  998. $u['warehouse'] = explode('|',trim($u['warehouse'],'|'));
  999. foreach ($u['warehouse'] as $v)
  1000. {
  1001. $uw .= " type = '$v' or";
  1002. }
  1003. $uw = rtrim($uw,'or');
  1004. $uw = " and (".ltrim($uw,' ').")";
  1005. $where .= $uw;
  1006. }
  1007. }
  1008. if(!$number)
  1009. {
  1010. echo json_encode(array('msg'=>'未扫入数据!','success'=>false));exit;
  1011. }
  1012. if(!$type)
  1013. {
  1014. echo json_encode(array('msg'=>'请选择需要录入数据的仓库!','success'=>false));exit;
  1015. }
  1016. if(!$express)
  1017. {
  1018. echo json_encode(array('msg'=>'请选择需要录入的快递!','success'=>false));exit;
  1019. }
  1020. $sex = $this->express->read($express);
  1021. if(stripos($number,'-') === false)
  1022. {
  1023. if(substr($number,0,3) == '788' && substr($number,-4,4) == '0430')//Fedex联邦
  1024. {
  1025. $number = substr($number,0,12);
  1026. }
  1027. if(strlen($number) == '34')//联邦杭州超长运单截取
  1028. {
  1029. //$number = substr($number,22,12);
  1030. $str = substr($order, 0,3);
  1031. if($str == "420"){
  1032. $order = substr($order,12);
  1033. }else{
  1034. $order = substr($order,22,12);
  1035. }
  1036. }
  1037. /**
  1038. $ex = array('DHL'=>10,'FEDEX'=>12,'FEDEXGF'=>12,'UPS'=>18,'GES'=>17,'TNT'=>9,'ARAMEX'=>11,'EMS_ZX_ZX_US'=>13);
  1039. if(isset($ex[$sex['printcode']]))
  1040. {
  1041. if(strlen($number) != $ex[$sex['printcode']])
  1042. {
  1043. echo json_encode(array('msg'=>'运单号错误,此单请重新录入运单号!','success'=>false));exit;
  1044. }
  1045. }
  1046. **/
  1047. if(strlen($number) == 12 && $sex['printcode'] != 'FEDEX' && $sex['printcode'] != 'FEDEXGF' && $sex['printcode'] != 'HUALEI-MLXY' && $sex['printcode'] != 'FEDEX_G')
  1048. {
  1049. echo json_encode(array('msg'=>'运单号和快递类型不符!F','success'=>false));exit;
  1050. }
  1051. if(strlen($number) == 10 && $sex['printcode'] != 'DHL' && $sex['printcode'] != 'DHLUSA' && $sex['printcode'] != 'HUALEI-DHL')
  1052. {
  1053. echo json_encode(array('msg'=>'运单号和快递类型不符!D','success'=>false));exit;
  1054. }
  1055. if(strlen($number) == 18 && $sex['printcode'] != 'UPS' && $sex['printcode'] != 'YunExpress' && $sex['printcode'] != 'YunExpress_BaoXian' && $sex['printcode'] != 'USKD01')
  1056. {
  1057. echo json_encode(array('msg'=>'运单号和快递类型不符!U'.$sex['printcode'],'success'=>false));exit;
  1058. }
  1059. $yd = $this->fullorder->find_all("waybill = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  1060. if(isset($yd[0]['number']))
  1061. {
  1062. $number = $yd[0]['number'];
  1063. if($yd[0]['express'] != $express && $yd[0]['express'] != 31)
  1064. {
  1065. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  1066. }
  1067. }
  1068. else
  1069. {
  1070. $yd = $this->fullordersmt->find_all("waybill = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  1071. if(isset($yd[0]['number']))
  1072. {
  1073. $number = $yd[0]['number'];
  1074. if($yd[0]['express'] != $express && $yd[0]['express'] != 31)
  1075. {
  1076. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  1077. }
  1078. }
  1079. else
  1080. {
  1081. $yd = $this->fullordertt->find_all("waybill = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  1082. if(isset($yd[0]['number']))
  1083. {
  1084. $number = $yd[0]['number'];
  1085. if($yd[0]['express'] != $express && $yd[0]['express'] != 31)
  1086. {
  1087. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  1088. }
  1089. }
  1090. else
  1091. {
  1092. $yd = $this->fullorderamz->find_all("waybill = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  1093. if(isset($yd[0]['number']))
  1094. {
  1095. $number = $yd[0]['number'];
  1096. if($yd[0]['express'] != $express && $yd[0]['express'] != 31)
  1097. {
  1098. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  1099. }
  1100. }
  1101. else
  1102. {
  1103. $yd = $this->fullorderxw->find_all("waybill = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  1104. if(isset($yd[0]['number']))
  1105. {
  1106. $number = $yd[0]['number'];
  1107. if($yd[0]['express'] != $express && $yd[0]['express'] != 31)
  1108. {
  1109. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  1110. }
  1111. }
  1112. else
  1113. {
  1114. echo json_encode(array('msg'=>'系统中未查到此运单,请确认!'.$number,'success'=>false));exit;
  1115. }
  1116. }
  1117. }
  1118. }
  1119. }
  1120. /**
  1121. if($yd[0]['printtype'] != 1)
  1122. {
  1123. echo json_encode(array('msg'=>'请扫描正确的运单号!','success'=>false));exit;
  1124. }
  1125. **/
  1126. //再次判断下杭州不报关的类别是否满足条件 如果有影响可以删除
  1127. if($yd[0]['express'] != $express){
  1128. echo json_encode(array('msg'=>'录入信息和选择快递不一致!2','success'=>false));exit;
  1129. }
  1130. $nu = $this->outbound->get_number($number);
  1131. if($nu)
  1132. {
  1133. echo json_encode(array('msg'=>'错误!此编号'.date('Ymd',$nu['time']).'已录入!','success'=>false));exit;
  1134. }
  1135. if($this->outbound->insert(array('type'=>$type,'number'=>$number,'waybill'=>$yd[0]['waybill'],'express'=>$yd[0]['express'],'gtime'=>date('Ymd',time()),'time'=>time())))
  1136. {
  1137. $data = $this->outbound->find_count($where);
  1138. echo json_encode(array('msg'=>$data,'music'=>'1','success'=>true));exit;
  1139. }
  1140. else
  1141. {
  1142. echo json_encode(array('msg'=>'数据写入失败,请重试!','success'=>false));exit;
  1143. }
  1144. }
  1145. else
  1146. {
  1147. $dd = $this->fullorder->find_all("number = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  1148. if(isset($dd[0]['number']))
  1149. {
  1150. if($dd[0]['express'] != $express)
  1151. {
  1152. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  1153. }
  1154. }
  1155. else
  1156. {
  1157. $dd = $this->fullordersmt->find_all("number = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  1158. if(isset($dd[0]['number']))
  1159. {
  1160. $number = $dd[0]['number'];
  1161. if($dd[0]['express'] != $express)
  1162. {
  1163. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  1164. }
  1165. }
  1166. else
  1167. {
  1168. $dd = $this->fullordertt->find_all("number = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  1169. if(isset($dd[0]['number']))
  1170. {
  1171. $number = $dd[0]['number'];
  1172. if($dd[0]['express'] != $express)
  1173. {
  1174. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  1175. }
  1176. }
  1177. else
  1178. {
  1179. $dd = $this->fullorderamz->find_all("number = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  1180. if(isset($dd[0]['number']))
  1181. {
  1182. $number = $dd[0]['number'];
  1183. if($dd[0]['express'] != $express)
  1184. {
  1185. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  1186. }
  1187. }
  1188. else
  1189. {
  1190. $dd = $this->fullorderxw->find_all("number = '$number' and library = '2' and librarytime > '".(time()-30*24*3600)."'");
  1191. if(isset($dd[0]['number']))
  1192. {
  1193. $number = $dd[0]['number'];
  1194. if($dd[0]['express'] != $express)
  1195. {
  1196. echo json_encode(array('msg'=>'录入信息和选择快递不一致!','success'=>false));exit;
  1197. }
  1198. }
  1199. else
  1200. {
  1201. echo json_encode(array('msg'=>'系统中未查到此编号,请确认!','success'=>false));exit;
  1202. }
  1203. }
  1204. }
  1205. }
  1206. }
  1207. if($dd[0]['printtype'] != 2)
  1208. {
  1209. echo json_encode(array('msg'=>'请扫描正确的条码!','success'=>false));exit;
  1210. }
  1211. //判断该订单的快递单号是否存在 如果不存在提示 补齐快递单号 在进行扫描
  1212. // if(empty($dd[0]['waybill'])){
  1213. // echo json_encode(array('msg'=>'该订单未检索到快递信息,请补齐快递单号!','success'=>false));exit;
  1214. // }
  1215. $nu = $this->outbound->get_number($number);
  1216. if($nu)
  1217. {
  1218. echo json_encode(array('msg'=>'错误!此编号'.date('Ymd',$nu['time']).'已录入!','success'=>false));exit;
  1219. }
  1220. if($this->outbound->insert(array('type'=>$type,'number'=>$number,'waybill'=>$dd[0]['waybill'],'express'=>$dd[0]['express'],'gtime'=>date('Ymd',time()),'time'=>time())))
  1221. {
  1222. $data = $this->outbound->find_count($where);
  1223. echo json_encode(array('msg'=>$data,'music'=>'1','success'=>true));exit;
  1224. }
  1225. else
  1226. {
  1227. echo json_encode(array('msg'=>'数据写入失败,请重试!','success'=>false));exit;
  1228. }
  1229. }
  1230. }
  1231. }
  1232. }