Ejemplo n.º 1
0
 public function addBoxToaOrder($boxId, $orderid, $opuser)
 {
     $time = time();
     $box_obj = new BoxManageModel();
     $inBox_obj = new OwInBoxStockModel();
     $skuDetail = $box_obj->getBoxSkuDetail($boxId);
     $this->dbConn->begin();
     foreach ($skuDetail as $skuInfo) {
         $tmp = $skuInfo['num'];
         $inboxInfo = $inBox_obj->getInbocStockInfo($skuInfo['sku']);
         if (FALSE === $inboxInfo) {
             //该料号没有封箱库存信息
             $this->dbConn->rollback();
             self::$errMsg = $skuInfo['sku'] . "没有封箱库存信息!";
             return FALSE;
         }
         if ($inboxInfo['num'] < $skuInfo['num']) {
             //如果封箱库存小于箱子中的库存数量 则会导致封箱库存不够扣
             $this->dbConn->rollback();
             self::$errMsg = $skuInfo['sku'] . "封箱库存小于发货数量!";
             return FALSE;
         }
         $upsql = "update wh_inboxStock set num=num-{$tmp} where sku='{$skuInfo['sku']}'";
         //扣除封箱库存
         $upquery = $this->dbConn->query($upsql);
         if (FALSE === $upquery) {
             $this->dbConn->rollback();
             self::$errMsg = $skuInfo['sku'] . "扣除封箱库存失败!";
             return FALSE;
         }
     }
     $sql = "\n                update wh_boxinuse set replenshId='{$orderid}', sendScanTime='{$time}', \n                sendScanUser='******', status='3' where boxid='{$boxId}'\n        ";
     $query = $this->dbConn->query($sql);
     if (FALSE === $query) {
         //更新状态失败
         $this->dbConn->rollback();
         self::$errMsg = '更新箱子状态失败!';
         return FALSE;
     }
     $logSql = "\n                insert into wh_boxOpLog (boxId, opcode, opuser, optime) values ('{$boxId}', 'send', '{$opuser}', '{$time}');\n                ";
     $logquery = $this->dbConn->query($logSql);
     if (FALSE === $logquery) {
         //记录日志出错
         $this->dbConn->rollback();
         self::$errMsg = '记录日志出错!';
         return FALSE;
     }
     $upd = "UPDATE wh_boxDetail SET stu = '2' WHERE boxId = '{$boxId}' AND is_delete = 0";
     $rtnUpd = $this->dbConn->query($upd);
     if ($rtnUpd === FALSE) {
         $this->dbConn->rollback();
         self::$errMsg = '更新装箱料号状态出错';
         return FALSE;
     }
     $this->dbConn->commit();
     return TRUE;
 }
Ejemplo n.º 2
0
 /**
  * pda扫描退箱,包含整箱退和部分退
  * add time:2014-05-07
  * add name:wangminwei 
  */
 public function view_pdaReturnBox()
 {
     $boxId = isset($_GET['boxId']) ? $_GET['boxId'] : '';
     $sku = isset($_GET['sku']) ? $_GET['sku'] : '';
     $num = isset($_GET['num']) ? $_GET['num'] : '';
     $ismark = $_GET['ismark'];
     $sku = get_goodsSn($sku);
     $boxObj = new OwInBoxStockModel();
     $rtnCode = $boxObj->pdaCheckReturnBox($boxId, $sku, $num, $ismark);
     switch ($rtnCode) {
         case 'Null':
             $rtnData['code'] = '404';
             $rtnData['msg'] = '箱号信息有误';
             break;
         case 'noPass':
             $rtnData['code'] = '403';
             $rtnData['msg'] = '箱子未发出,无需退箱';
             break;
         case 'moreQty':
             $rtnData['code'] = '405';
             $rtnData['msg'] = '退箱料号数量超过装箱料号数量';
             break;
         case 'sameQty':
             $rtnData['code'] = '406';
             $rtnData['msg'] = '退箱数量与装箱数量相同,请退整箱';
             break;
         case 'failure':
             $rtnData['code'] = '407';
             $rtnData['msg'] = '退箱失败';
             break;
         case 'success':
             $rtnData['code'] = '200';
             $rtnData['msg'] = '退箱成功';
             break;
         default:
             $rtnData['code'] = '409';
             $rtnData['msg'] = '数据有问题';
             break;
     }
     $rtnData['sku'] = $sku;
     echo json_encode($rtnData);
 }
Ejemplo n.º 3
0
 public function boxReview($sku, $num, $boxid, $user, &$isend)
 {
     $inboxSkuInfo = $this->getSkuInfoInBox($sku, $boxid);
     if (FALSE === $inboxSkuInfo) {
         self::$errMsg = '不存在的sku!';
         return FALSE;
     }
     if ($inboxSkuInfo['num'] != $num) {
         //相等 复核成功
         self::$errMsg = '复核数量不对!';
         return FALSE;
     }
     $isend = $this->isLastSku($sku, $boxid);
     //         var_dump($isend);exit;
     $this->dbConn->begin();
     $sku = mysql_real_escape_string($sku);
     $time = time();
     $insertReview = "insert into wh_boxReview (boxId, sku, number, time, opuser) values ('{$boxid}', '{$sku}', '{$num}', '{$time}', '{$user}')";
     //         echo $insertReview;exit;
     $insert_query = $this->dbConn->query($insertReview);
     if (FALSE === $insert_query) {
         $this->dbConn->rollback();
         self::$errMsg = '写入复核记录失败!';
         return FALSE;
     }
     if ($isend) {
         $updateSql = "update wh_boxinuse set status=2, reviewTime={$time}, reviewUser={$user} where boxid='{$boxid}'";
         //         	echo $updateSql;exit;
         $updateQuery = $this->dbConn->query($updateSql);
         if (FALSE === $updateQuery) {
             //更新状态失败 回滚
             $this->dbConn->rollback();
             self::$errMsg = '更新订单状态回滚';
             return FALSE;
         }
     }
     $this->dbConn->commit();
     return TRUE;
 }