<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                ### 檢查訂單錄入SKU是否符合發貨條件 **位置:** Common\Lib\FlowLib.class.php **參數:** * @param $id int 訂單ID * @param $order_type int 訂單類型 * @param $shipper_id int 發貨位置ID * @param $sku string 錄入的SKU * @param $num int 發貨數量 * @return 不滿足條件提示信息(失敗)或 SKU的ID **調用:** * $flow = new FlowLib(); * $order_arr = $flow->checkSku($id, $order_type, $shipper_id, $sku, $num); **完整代碼:** ~~~ /** * 檢查SKU的正確性和庫存 * @param $id int 訂單ID * @param $order_type int 訂單類型 * @param $shipper_id int 發貨位置ID * @param $sku string 發貨的SKU * @param $num int 發貨數量 * @return array * whz 2018-01-25 * */ public function checkSku($id, $order_type, $shipper_id, $sku, $num) { //1、判斷導入SKU不能為空 if ($sku == "") { return array('success'=>false, 'code'=>201, 'msg'=>'導入SKU不能為空!'); } //2、判斷導入發貨數量不能為空 if ($num == "") { return array('success'=>false, 'code'=>202, 'msg'=>'導入發貨數量不能為空!'); } //3、判斷導入發貨數量必須是數字 if (!is_numeric($num)) { return array('success'=>false, 'code'=>203, 'msg'=>'導入發貨數量必須是數字!'); } //4、判斷SKU發貨數量是否小于0 if ($num <= 0) { return array('success'=>false, 'code'=>204, 'msg'=>$sku.',填寫發貨數量必須大于0!'); } //5、根據SKU查詢SKU的ID,判斷SKU是否存在 $sku_id = M('goods_sku') ->field('id') ->where(array('goods_sku'=>$sku, 'is_delete'=>0)) ->find(); if (count($sku_id) == 0) { return array('success'=>false, 'code'=>205, 'msg'=>$sku . ',SKU不存在!'); } $sku_id = $sku_id['id']; //6、判斷SKU是否訂單已經錄入過 $map = array( 'type' => $order_type, 'order_id' => $id, 'sku_id' => $sku_id, 'sku' => $sku, 'is_delete' => 0 ); $exit_sku = M('wms_sku')->where($map)->count(); if ($exit_sku > 0) { return array('success'=>false, 'code'=>206, 'msg'=>$sku . ',當前訂單已錄入!'); } //7、根據SKU的ID和發貨位置ID去商品唯一碼表查詢可發貨的庫存 //訂單類型:配貨單、移庫單,發貨位置是倉庫 if ($order_type == 1 || $order_type == 4) { //查詢倉庫名 $delivery = get_warehouse($shipper_id); $where['warehouse'] = $shipper_id; //配貨、移庫的商品必須在倉庫 $where['inventory_status'] = array('in',array(1,2,3,5,6)); $where['delivery_status'] = 1; } //訂單類型:調撥單、退倉單,發貨位置是門店 if ($order_type == 2 || $order_type == 3) { //查詢門店名 $delivery = get_shops_name($shipper_id); $where['max_shops_id'] = $shipper_id; //調撥、退倉的商品必須在門店 $where['inventory_status'] = array('in',array(1,2,3,5,6)); $where['delivery_status'] = 2; } //屬于同一個SKU的唯一碼的sku_id相同 $where['sku_id'] = $sku_id; $where['is_delete'] = 0; //查詢SKU庫存 $goodcount = M('goods_no') ->where($where) ->count(); //8、判斷是否有可發貨的庫存 if ($goodcount <1) { return array('success'=>false, 'code'=>207, 'msg'=>$delivery . ',未找到SKU為:' . $sku . '相關商品信息!'); } //9、減去已經錄入SKU的發貨數量() $num_sku = M('wms_flow as r') ->field('u.num') ->join('coscia_wms_sku as u on r.id=u.order_id','left') ->where(array('u.type'=>$order_type, 'u.sku'=>$sku, 'u.is_delete'=>0, 'r.order_type'=>$order_type, 'r.status'=>array('in',array(0,1)))) ->select(); $num_skus = 0; foreach ($num_sku as $key => $value) { $num_skus += $value['num']; } $nums = $goodcount - $num_skus; //10、判斷發貨數量是否大于發貨庫存 if ((int)$num > (int)$nums) { return array('success'=>false, 'code'=>208, 'msg'=>$sku . ',原因:庫存不足,可發庫存為:' . $goodcount . ',減去已經錄入SKU的發貨數量:' . $num_skus . ',' . $delivery . '庫存量為:' . $nums . ' !'); } //11、SKU和發貨數量沒有問題返回SKU的ID return $sku_id; } ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看