|
@@ -0,0 +1,200 @@
|
|
|
+<?php defined('BASEPATH') or exit('No direct script access allowed');
|
|
|
+/**
|
|
|
+ * 由于whlabel类下的代码太长了,决定以后非必要代码都放在whlabelfz类中,以便于管理。
|
|
|
+ */
|
|
|
+class Whlabelfz1 extends Start_Controller
|
|
|
+{
|
|
|
+ public function __construct()
|
|
|
+ {
|
|
|
+ parent::__construct();
|
|
|
+ $this->load->_model("Model_whlabel_bh_transfer",'whlabel_bh_transfer');
|
|
|
+ $this->load->_model("Model_whlabel_bh_scan",'whlabel_bh_scan');
|
|
|
+ $this->load->_model("Model_logic_u9tools","logic_u9tools");
|
|
|
+ $this->load->_model("Model_whlabellabel","whlabellabel");
|
|
|
+ }
|
|
|
+ //定义方法的调用规则 获取URI第二段值
|
|
|
+ public function _remap($arg, $arg_array)
|
|
|
+ {
|
|
|
+ if ($arg == 'scam_mgxx') //
|
|
|
+ {
|
|
|
+ $this->_scanMgxx();
|
|
|
+ }
|
|
|
+ else if($arg =='scam_mgxx_post')
|
|
|
+ {
|
|
|
+ $this->_scanMgxxPost();
|
|
|
+ }else if($arg == 'mgxxindex'){
|
|
|
+ $this->_mgxxindex();
|
|
|
+ }
|
|
|
+ else if($arg == 'get_scan_info'){
|
|
|
+ $this->_getScanInfo();
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ $this->_index();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ private function _index(){
|
|
|
+ die('No direct script access allowed');
|
|
|
+ }
|
|
|
+ private function _mgxxindex(){
|
|
|
+ $post = $this->input->post();
|
|
|
+ if(!empty($post)){
|
|
|
+ $rows = array('total'=>0,'over'=>1,'pagenum'=>1,'rows'=>([]));
|
|
|
+ echo json_encode($rows);exit;
|
|
|
+ }
|
|
|
+ $this->_Template('whlabelfz1_mgxxindex', $this->data);
|
|
|
+ }
|
|
|
+ //美国销售 扫描出库的
|
|
|
+ private function _scanMgxx(){
|
|
|
+ $post = $this->input->post();
|
|
|
+ if(!empty($post)){
|
|
|
+ $type = $this->input->post('type',true);
|
|
|
+ $orderinfo = $this->input->post('orderinfo',true);
|
|
|
+ $page = $this->input->post('page',true);
|
|
|
+ $perpage = $this->input->post('perpage',true);
|
|
|
+ $where = " type = ".$type." and orderinfo = '".(string)$orderinfo."' ";
|
|
|
+
|
|
|
+ if(empty($page))
|
|
|
+ {
|
|
|
+ $start = 0;
|
|
|
+ $perpage = 1;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ $start = ($page - 1)*$perpage;
|
|
|
+ }
|
|
|
+ $order_str = 'id desc';
|
|
|
+ $info_list = $this->whlabel_bh_scan->find_all($where,'id,orderinfo,pm,label,sl,scantime',$order_str,$start,$perpage);
|
|
|
+ $total = $this->whlabel_bh_scan->find_count($where);
|
|
|
+ $pagenum = ceil($total/$perpage);
|
|
|
+ $over = $total-($start+$perpage);
|
|
|
+ foreach($info_list as $k=>$v){
|
|
|
+ $info_list[$k]['scantime'] = date('Y-m-d H:i:s',$v['scantime']);
|
|
|
+ }
|
|
|
+ $rows = array('total'=>$total,'over'=>$over,'pagenum'=>$pagenum,'rows'=>($info_list));
|
|
|
+ echo json_encode($rows);exit;
|
|
|
+ }else{
|
|
|
+ $orderinfo = $this->input->get('orderinfo',true);
|
|
|
+ $type = $this->input->get('type',true);
|
|
|
+ $this->data['orderinfo'] = $orderinfo;
|
|
|
+ $this->data['type'] = $type;
|
|
|
+ $this->_Template('whlabelfz1_scammgxx', $this->data);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ private function _getScanInfo(){
|
|
|
+ $post = $this->input->post();
|
|
|
+ $label = $post['label'];
|
|
|
+ if(empty($label)){
|
|
|
+ die(json_encode(['code'=>-1,'msg'=>'请输入标签号','data'=>[]]));
|
|
|
+ }
|
|
|
+ $info = $this->whlabel_bh_transfer->find("label ='".$label."'");
|
|
|
+ if(empty($info)){
|
|
|
+ die(json_encode(['code'=>-1,'msg'=>'标签号不存在','data'=>[]]));
|
|
|
+ }
|
|
|
+ echo "<pre>";
|
|
|
+ print_r($info);
|
|
|
+ die;
|
|
|
+ }
|
|
|
+ //接收美店销售的post提交
|
|
|
+ private function _scanMgxxPost(){
|
|
|
+ $post = $this->input->post();
|
|
|
+ $type = $post['type'];
|
|
|
+ $orderinfo = $post['orderinfo'];
|
|
|
+ $label = $post['scanlabel'];
|
|
|
+ $num = (int)$post['num'];
|
|
|
+ if(empty($type)){
|
|
|
+ exit(json_encode(['code'=>-1,'msg'=>'数据类型异常,请联系技术','data'=>[]],JSON_UNESCAPED_UNICODE));
|
|
|
+ }
|
|
|
+ if(empty($orderinfo)){
|
|
|
+ exit(json_encode(['code'=>-1,'msg'=>'美国销售单号未输入','data'=>[]],JSON_UNESCAPED_UNICODE));
|
|
|
+ }
|
|
|
+ if(empty($label)){
|
|
|
+ exit(json_encode(['code'=>-1,'msg'=>'标签号不能为空','data'=>[]],JSON_UNESCAPED_UNICODE));
|
|
|
+ }
|
|
|
+ if(!in_array($type,[1,2])){
|
|
|
+ exit(json_encode(['code'=>-1,'msg'=>'数据类型异常,请联系技术','data'=>[],JSON_UNESCAPED_UNICODE]));
|
|
|
+ }
|
|
|
+ if($type == 1){
|
|
|
+ $num = 1;
|
|
|
+ }
|
|
|
+ if($type == 2){
|
|
|
+ if($num > 200){
|
|
|
+ exit(json_encode(['code'=>-1,'msg'=>'扫描数量不能大于200','data'=>[],JSON_UNESCAPED_UNICODE]));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $info = $this->whlabel_bh_scan->find("label ='".$label."'");
|
|
|
+ if(!empty($info)){
|
|
|
+ exit(json_encode(['code'=>-1,'msg'=>'该标签已被扫描','data'=>[],JSON_UNESCAPED_UNICODE]));
|
|
|
+ }
|
|
|
+
|
|
|
+ if($type == 1){
|
|
|
+ $res = $this->_bbscan($orderinfo,$label);
|
|
|
+ }elseif($type == 2){
|
|
|
+ $res = $this->_bqscan($orderinfo,$label,$num);
|
|
|
+ }
|
|
|
+
|
|
|
+ exit(json_encode($res));
|
|
|
+
|
|
|
+ }
|
|
|
+ //生产布标扫描
|
|
|
+ private function _bbscan($orderinfo,$label){
|
|
|
+ $info = $this->whlabel_bh_transfer->find("label ='".$label."'");
|
|
|
+ if(empty($info)){
|
|
|
+ return ['code'=>-1,'msg'=>'标签号不存在','data'=>[]];
|
|
|
+ }
|
|
|
+ if($info['label'] != $label){
|
|
|
+ return ['code'=>-1,'msg'=>'条码对应的美国销售单号不一致','data'=>[]];
|
|
|
+ }
|
|
|
+ $arr = [
|
|
|
+ 'orderinfo'=>(string)$orderinfo,
|
|
|
+ 'type'=>1,
|
|
|
+ 'label'=>(string)$label,
|
|
|
+ 'features'=>(string)$info['features'],
|
|
|
+ 'fid'=>$info['id'],
|
|
|
+ 'jm'=>$info['jm'],
|
|
|
+ 'pm'=>$info['pm'],
|
|
|
+ 'sl'=>1,
|
|
|
+ 'scantime'=>time(),
|
|
|
+ 'status'=>0,
|
|
|
+ ];
|
|
|
+ $this->whlabel_bh_scan->insert($arr);
|
|
|
+ return ['code'=>1,'msg'=>'标签扫描成功','data'=>[]];
|
|
|
+ }
|
|
|
+ //标签扫描
|
|
|
+ private function _bqscan($orderinfo,$label,$num){
|
|
|
+ $info = $this->whlabellabel->find("label ='".$label."'");
|
|
|
+ if(empty($info)){
|
|
|
+ return ['code'=>-1,'msg'=>'标签号不存在','data'=>[]];
|
|
|
+ }
|
|
|
+ $list = [
|
|
|
+ [
|
|
|
+ 'sku2'=>$info['features'],
|
|
|
+ ]
|
|
|
+ ];
|
|
|
+ $res = $this->logic_u9tools->getU9bm($list,'sku2');
|
|
|
+ if(empty($res[0])){
|
|
|
+ return ['code'=>-1,'msg'=>'u9条码编辑错误-1','data'=>[]];
|
|
|
+ }
|
|
|
+ if(empty($res[0]['jm'])){
|
|
|
+ return ['code'=>-1,'msg'=>'u9条码编辑异常-2','data'=>[]];
|
|
|
+ }
|
|
|
+ $arr = [
|
|
|
+ 'orderinfo'=>(string)$orderinfo,
|
|
|
+ 'type'=>1,
|
|
|
+ 'label'=>(string)$label,
|
|
|
+ 'features'=>(string)$info['features'],
|
|
|
+ 'fid'=>$info['id'],
|
|
|
+ 'jm'=>$res[0]['jm'],
|
|
|
+ 'pm'=>$res[0]['zh'],
|
|
|
+ 'sl'=>$num,
|
|
|
+ 'scantime'=>time(),
|
|
|
+ 'status'=>0,
|
|
|
+ ];
|
|
|
+ $this->whlabel_bh_scan->insert($arr);
|
|
|
+ return ['code'=>1,'msg'=>'标签扫描成功','data'=>[]];
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+}
|