|
@@ -93,15 +93,16 @@ class Sale extends Base
|
|
|
}
|
|
|
}
|
|
|
if ($goodinfo['is_stock'] == 1) {
|
|
|
- $stock = Db::name("good_stock")->alias("a")->leftJoin("warehouse_info b", "a.wsm_code=b.wsm_code")->where
|
|
|
- (["spuCode" => $spuCode, "a.is_del" => 0, "a.status" => 1, "b.wsm_type" => 5, "b.companyNo" =>
|
|
|
- $supplierNo])->field("a.id,a.wait_in_stock,a.usable_stock,a.wait_out_stock,a.wsm_code")->find();
|
|
|
- if ($stock == false || $stock['usable_stock'] < $good_num) {
|
|
|
- return error_show(1003, "库存数量不足");
|
|
|
- }
|
|
|
- $stock_num =Db::name("good_stock_info")->where(["stockid"=>$stock['id']])->sum('balance_num');
|
|
|
+ $stock_num = Db::name("good_stock")->alias("a")
|
|
|
+ ->leftJoin("warehouse_info b", "a.wsm_code=b.wsm_code")
|
|
|
+ ->leftJoin("good_stock_info c", "a.id=c.stockid")
|
|
|
+ ->where(["spuCode" => $spuCode, "a.is_del" => 0, "a.status" => 1, "b.wsm_type" => 5, "b.companyNo" =>$supplierNo])
|
|
|
+ ->sum('balance_num');
|
|
|
+// if ($stock == false || $stock['usable_stock'] < $good_num) {
|
|
|
+// return error_show(1003, "库存数量不足");
|
|
|
+// }
|
|
|
if($stock_num < $good_num){
|
|
|
- return error_show(1003, "Bn库存数量不足");
|
|
|
+ return error_show(1003, "库存数量不足");
|
|
|
}
|
|
|
$origin_price = 0;
|
|
|
} else {
|
|
@@ -314,26 +315,20 @@ class Sale extends Base
|
|
|
// return error_show(1002, "库存商品关联采购单失败");
|
|
|
// }
|
|
|
if (isset($stock)) {
|
|
|
- $stck = [
|
|
|
- "usable_stock" => $stock['usable_stock'] - $good_num,
|
|
|
- "wait_out_stock" => $stock['wait_out_stock'] + $good_num,
|
|
|
- "updatetime" => date("Y-m-d H:i:s")
|
|
|
- ];
|
|
|
-
|
|
|
- $upad = Db::name("good_stock")->where($stock)->update($stck);
|
|
|
- if ($upad == false) {
|
|
|
- Db::rollback();
|
|
|
- return error_show(1002, "库存商品更新库存失败");
|
|
|
- }
|
|
|
- $stockinfo =GoodStockInfo::OrderBn($orderCode,$stock['id'],$good_num);
|
|
|
+ $stockid= Db::name("good_stock")->alias("a")
|
|
|
+ ->leftJoin("warehouse_info b", "a.wsm_code=b.wsm_code")
|
|
|
+ ->leftJoin("good_stock_info c", "a.id=c.stockid")
|
|
|
+ ->where(["spuCode" => $spuCode, "a.is_del" => 0, "a.status" => 1, "b.wsm_type" => 5, "b.companyNo" =>$supplierNo])
|
|
|
+ ->column('a.id');
|
|
|
+ $stockinfo =GoodStockInfo::OrderBn($orderCode,$stockid,$good_num);
|
|
|
if($stockinfo==false){
|
|
|
Db::rollback();
|
|
|
return error_show(1002, "Bn库存更新库存失败");
|
|
|
}
|
|
|
//商品变动日志表,good_log_code字段存储采购单号
|
|
|
- $good_data[] = ['good_log_code' => $orderCode, "stock_id" => $stock['id'], "type" => 2, 'stock' => $good_num, "stock_name" => "usable_stock"];
|
|
|
- $good_data[] = ['good_log_code' => $orderCode, "stock_id" => $stock['id'], "type" => 1, 'stock' => $good_num, "stock_name" => "wait_out_stock"];
|
|
|
- GoodLog::LogAdd($this->post['token'], $good_data, "XSQRD");
|
|
|
+// $good_data[] = ['good_log_code' => $orderCode, "stock_id" => $stock['id'], "type" => 2, 'stock' => $good_num, "stock_name" => "usable_stock"];
|
|
|
+// $good_data[] = ['good_log_code' => $orderCode, "stock_id" => $stock['id'], "type" => 1, 'stock' => $good_num, "stock_name" => "wait_out_stock"];
|
|
|
+// GoodLog::LogAdd($this->post['token'], $good_data, "XSQRD");
|
|
|
}
|
|
|
|
|
|
}
|
|
@@ -417,7 +412,7 @@ class Sale extends Base
|
|
|
"send_num" => $num,
|
|
|
"check_num" => 0,
|
|
|
"error_num" => 0,
|
|
|
- "wsm_code" => $is_stock == 1 ?$stock['wsm_code']:$cgdinfo['wsm_code'],
|
|
|
+ "wsm_code" => $is_stock == 1 ?'':$cgdinfo['wsm_code'],
|
|
|
"order_type" => $is_stock == 1 ? 1 : 2,
|
|
|
"status" => $outstatus,
|
|
|
"addtime" => date("Y-m-d H:i:s"),
|