|
@@ -42,8 +42,6 @@ class Sale extends Base
|
|
if(!isset($tmp['code']) || $tmp['code']!=0) return json_show($tmp['code'],$tmp['message'],$tmp['data']);
|
|
if(!isset($tmp['code']) || $tmp['code']!=0) return json_show($tmp['code'],$tmp['message'],$tmp['data']);
|
|
if(!isset($tmp['data'][$customer_code])) return json_show(1004, "未找到客户数据");
|
|
if(!isset($tmp['data'][$customer_code])) return json_show(1004, "未找到客户数据");
|
|
if(!isset($tmp['data'][$supplierNo])) return json_show(1004, "未找到平台供应商数据");
|
|
if(!isset($tmp['data'][$supplierNo])) return json_show(1004, "未找到平台供应商数据");
|
|
-
|
|
|
|
-
|
|
|
|
$goodtype = isset($this->post['goodtype']) && $this->post['goodtype'] !== "" ? intval($this->post['goodtype']) : "1";
|
|
$goodtype = isset($this->post['goodtype']) && $this->post['goodtype'] !== "" ? intval($this->post['goodtype']) : "1";
|
|
$order_type = isset($this->post['order_type']) && $this->post['order_type'] !== "" ? intval($this->post['order_type']) : "1";
|
|
$order_type = isset($this->post['order_type']) && $this->post['order_type'] !== "" ? intval($this->post['order_type']) : "1";
|
|
$sendtype = isset($this->post['sendtype']) && $this->post['sendtype'] !== "" ? intval($this->post['sendtype']) : "";
|
|
$sendtype = isset($this->post['sendtype']) && $this->post['sendtype'] !== "" ? intval($this->post['sendtype']) : "";
|
|
@@ -70,8 +68,8 @@ class Sale extends Base
|
|
$paytime = isset($this->post['paytime']) && $this->post['paytime'] != "" ? $this->post['paytime'] : "";
|
|
$paytime = isset($this->post['paytime']) && $this->post['paytime'] != "" ? $this->post['paytime'] : "";
|
|
$workNo = isset($this->post['workNo']) && $this->post['workNo'] != "" ? trim($this->post['workNo']) : "";
|
|
$workNo = isset($this->post['workNo']) && $this->post['workNo'] != "" ? trim($this->post['workNo']) : "";
|
|
$ct = Db::name('good_platform')->alias('a')->join('good b', 'b.spuCode=a.spuCode', 'left')
|
|
$ct = Db::name('good_platform')->alias('a')->join('good b', 'b.spuCode=a.spuCode', 'left')
|
|
- ->where(['a.skuCode' => $good_code])->field("b.*,a.skuCode,a.platform_code,a.plat_code")->find();
|
|
|
|
- if ($ct == false) {
|
|
|
|
|
|
+ ->where(['a.skuCode' => $good_code])->field("b.*,a.skuCode,a.platform_code,a.plat_code")->findOrEmpty();
|
|
|
|
+ if (empty($ct)) {
|
|
return error_show(1002, "未找到商品数据");
|
|
return error_show(1002, "未找到商品数据");
|
|
}
|
|
}
|
|
|
|
|
|
@@ -90,13 +88,9 @@ class Sale extends Base
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if ($goodinfo['is_stock'] == 1) {
|
|
if ($goodinfo['is_stock'] == 1) {
|
|
- $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 and c.balance_num>0")
|
|
|
|
- ->where(["spuCode" => $spuCode, "a.is_del" => 0, "a.status" => 1, "b.wsm_type" => 5, "b.companyNo" =>$supplierNo])
|
|
|
|
- ->sum('balance_num');
|
|
|
|
|
|
+ $stock_num = Db::name("good")->where(["spuCode"=> $spuCode])->value("usable_stock",0);
|
|
if($stock_num < $good_num){
|
|
if($stock_num < $good_num){
|
|
- return error_show(1003, "库存数量不足");
|
|
|
|
|
|
+ return error_show(1003, "商品可用库存数量不足");
|
|
}
|
|
}
|
|
$origin_price = 0;
|
|
$origin_price = 0;
|
|
} else {
|
|
} else {
|
|
@@ -203,6 +197,9 @@ class Sale extends Base
|
|
$ri = $this->uname;
|
|
$ri = $this->uname;
|
|
Db::startTrans();
|
|
Db::startTrans();
|
|
try {
|
|
try {
|
|
|
|
+ $goodStock = Db::name("good")->where(["spuCode"=> $spuCode])->lock(true)->field("spuCode,usable_stock")
|
|
|
|
+ ->findOrEmpty();
|
|
|
|
+ if(empty($goodStock)) throw new Exception("未找到商品数据");
|
|
$data = [
|
|
$data = [
|
|
"orderCode" => $orderCode,
|
|
"orderCode" => $orderCode,
|
|
"good_code" => $spuCode,
|
|
"good_code" => $spuCode,
|
|
@@ -255,7 +252,6 @@ class Sale extends Base
|
|
$paytime == "" ? "" : $data['paytime'] = $paytime;
|
|
$paytime == "" ? "" : $data['paytime'] = $paytime;
|
|
$datainfo = Db::name('sale')->insert($data, true);
|
|
$datainfo = Db::name('sale')->insert($data, true);
|
|
if ($datainfo > 0) {
|
|
if ($datainfo > 0) {
|
|
-
|
|
|
|
//修改状态,添加待办
|
|
//修改状态,添加待办
|
|
ActionLog::logAdd(['id'=>$this->uid,'nickname'=>$this->uname], [
|
|
ActionLog::logAdd(['id'=>$this->uid,'nickname'=>$this->uname], [
|
|
"order_code" => $orderCode,//销售单code
|
|
"order_code" => $orderCode,//销售单code
|
|
@@ -281,8 +277,7 @@ class Sale extends Base
|
|
$actupp = Db::name("activity_info")->where(["skuCode" => $skuCode, "activity_code" => $actcode,
|
|
$actupp = Db::name("activity_info")->where(["skuCode" => $skuCode, "activity_code" => $actcode,
|
|
"is_del" => 0, "status" => 1])->save($actup);
|
|
"is_del" => 0, "status" => 1])->save($actup);
|
|
if ($actupp == false) {
|
|
if ($actupp == false) {
|
|
- Db::rollback();
|
|
|
|
- return error_show(1002, "活动库存修改失败");
|
|
|
|
|
|
+ throw new Exception("活动库存修改失败");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
$outstatus = 0;
|
|
$outstatus = 0;
|
|
@@ -290,20 +285,16 @@ class Sale extends Base
|
|
if ($is_stock == 0) {
|
|
if ($is_stock == 0) {
|
|
$bol = $this->createCgd($cgd, $standing_book_da);
|
|
$bol = $this->createCgd($cgd, $standing_book_da);
|
|
if ($bol == false) {
|
|
if ($bol == false) {
|
|
- Db::rollback();
|
|
|
|
- return error_show(1002, "订单创建失败");
|
|
|
|
|
|
+ throw new Exception("订单创建失败");
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
$outstatus = 1;
|
|
$outstatus = 1;
|
|
- $stockid= 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])
|
|
|
|
- ->column('a.id');
|
|
|
|
- $stockinfo =GoodStockInfo::OrderBn($orderCode,$stockid,$good_num);
|
|
|
|
- if($stockinfo==false){
|
|
|
|
- Db::rollback();
|
|
|
|
- return error_show(1002, "更新库存失败");
|
|
|
|
- }
|
|
|
|
|
|
+ $stockUp =[
|
|
|
|
+ "usable_stock"=>$goodStock['usable_stock']-$good_num,
|
|
|
|
+ "updatetime"=>date("Y-m-d H:i:s"),
|
|
|
|
+ ];
|
|
|
|
+ $goodStockUp = Db::name("good")->where($goodStock)->update($stockUp);
|
|
|
|
+ if($goodStockUp==false) throw new Exception("商品可用库存更新失败");
|
|
}
|
|
}
|
|
|
|
|
|
if ($sendtype == 1) {
|
|
if ($sendtype == 1) {
|
|
@@ -343,14 +334,13 @@ class Sale extends Base
|
|
$order = Db::name("order_num")->where(["orderCode" => $orderCode, "status" => 1])->where([["wsend_num", ">=", 0]])
|
|
$order = Db::name("order_num")->where(["orderCode" => $orderCode, "status" => 1])->where([["wsend_num", ">=", 0]])
|
|
->lock(true)->find();
|
|
->lock(true)->find();
|
|
if ($order == false) {
|
|
if ($order == false) {
|
|
- return error_show(1004, "未找到可以发货得采购单数据");
|
|
|
|
|
|
+ throw new Exception("未找到可以发货得采购单数据");
|
|
}
|
|
}
|
|
$order['wsend_num'] -= $num;
|
|
$order['wsend_num'] -= $num;
|
|
$order['send_num'] += $num;
|
|
$order['send_num'] += $num;
|
|
$or = Db::name("order_num")->save($order);
|
|
$or = Db::name("order_num")->save($order);
|
|
if ($or == false) {
|
|
if ($or == false) {
|
|
- Db::rollback();
|
|
|
|
- return error_show(1002, "发货地址添加创建失败");
|
|
|
|
|
|
+ throw new Exception("发货地址添加创建失败");
|
|
}
|
|
}
|
|
$tep = [
|
|
$tep = [
|
|
"cgdNo" => $order['cgdNo'],
|
|
"cgdNo" => $order['cgdNo'],
|
|
@@ -362,14 +352,12 @@ class Sale extends Base
|
|
];
|
|
];
|
|
$sen = Db::name("order_send")->save($tep);
|
|
$sen = Db::name("order_send")->save($tep);
|
|
if ($sen == false) {
|
|
if ($sen == false) {
|
|
- Db::rollback();
|
|
|
|
- return error_show(1002, "发货地址添加创建失败");
|
|
|
|
|
|
+ throw new Exception("发货地址添加创建失败");
|
|
}
|
|
}
|
|
|
|
|
|
$cgdinfo = Db::name("purchease_order")->where(["cgdNo" => $order['cgdNo']])->find();
|
|
$cgdinfo = Db::name("purchease_order")->where(["cgdNo" => $order['cgdNo']])->find();
|
|
if ($cgdinfo == false) {
|
|
if ($cgdinfo == false) {
|
|
- Db::rollback();
|
|
|
|
- return error_show(1002, "未匹配到采购数据");
|
|
|
|
|
|
+ throw new Exception("未匹配到采购数据");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
$out = [
|
|
$out = [
|
|
@@ -393,8 +381,8 @@ class Sale extends Base
|
|
];
|
|
];
|
|
$ou = Db::name("order_out")->insertGetId($out);
|
|
$ou = Db::name("order_out")->insertGetId($out);
|
|
if ($ou == false) {
|
|
if ($ou == false) {
|
|
- Db::rollback();
|
|
|
|
- return error_show(1002, "发货地址添加创建失败");
|
|
|
|
|
|
+ throw new Exception("发货地址添加创建失败");
|
|
|
|
+// return error_show(1002, "发货地址添加创建失败");
|
|
} else {
|
|
} else {
|
|
//修改状态,添加待办
|
|
//修改状态,添加待办
|
|
ActionLog::logAdd(['id'=>$rm,'nickname'=>$ri], [
|
|
ActionLog::logAdd(['id'=>$rm,'nickname'=>$ri], [
|
|
@@ -450,10 +438,9 @@ class Sale extends Base
|
|
else $standing_book_da['outCode'] = [$outCode];
|
|
else $standing_book_da['outCode'] = [$outCode];
|
|
}
|
|
}
|
|
}
|
|
}
|
|
-
|
|
|
|
else {
|
|
else {
|
|
- Db::rollback();
|
|
|
|
- return error_show(1002, "发货地址添加创建失败");
|
|
|
|
|
|
+ throw new Exception("发货地址添加创建失败");
|
|
|
|
+// return error_show(1002, "发货地址添加创建失败");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -464,9 +451,9 @@ class Sale extends Base
|
|
|
|
|
|
Db::commit();
|
|
Db::commit();
|
|
return app_show(0, "订单创建成功", ["order_code" => $orderCode]);
|
|
return app_show(0, "订单创建成功", ["order_code" => $orderCode]);
|
|
|
|
+ }else{
|
|
|
|
+ throw new Exception("订单创建失败");
|
|
}
|
|
}
|
|
- Db::rollback();
|
|
|
|
- return error_show(1002, "订单创建失败");
|
|
|
|
} catch (\Exception $e) {
|
|
} catch (\Exception $e) {
|
|
Db::rollback();
|
|
Db::rollback();
|
|
return error_show(1005, $e->getMessage());
|
|
return error_show(1005, $e->getMessage());
|
|
@@ -499,7 +486,7 @@ class Sale extends Base
|
|
];
|
|
];
|
|
$in = Db::name("warehouse_info")->insert($inwsm);
|
|
$in = Db::name("warehouse_info")->insert($inwsm);
|
|
if ($in == false) {
|
|
if ($in == false) {
|
|
- return false;
|
|
|
|
|
|
+ throw new Exception("虚拟供应商仓库创建失败");
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
$wsm_code = $wsm['wsm_code'];
|
|
$wsm_code = $wsm['wsm_code'];
|
|
@@ -597,7 +584,7 @@ class Sale extends Base
|
|
];
|
|
];
|
|
$re = Db::name("order_num")->save($rela);
|
|
$re = Db::name("order_num")->save($rela);
|
|
if ($re == false) {
|
|
if ($re == false) {
|
|
- return false;
|
|
|
|
|
|
+ throw new Exception("采购单销售单关联失败");
|
|
} else {
|
|
} else {
|
|
$stokc = Db::name("good_stock")->where(['spuCode' => $data['spuCode'], "wsm_code" => $wsm_code, "is_del" => 0])->find();
|
|
$stokc = Db::name("good_stock")->where(['spuCode' => $data['spuCode'], "wsm_code" => $wsm_code, "is_del" => 0])->find();
|
|
if ($stokc == false) {
|
|
if ($stokc == false) {
|
|
@@ -619,7 +606,7 @@ class Sale extends Base
|
|
}
|
|
}
|
|
$stoc = Db::name("good_stock")->save($stokc);
|
|
$stoc = Db::name("good_stock")->save($stokc);
|
|
if ($stoc == false) {
|
|
if ($stoc == false) {
|
|
- return false;
|
|
|
|
|
|
+ throw new Exception("商品待入库存更新失败");
|
|
}
|
|
}
|
|
$good_data[] = ['good_log_code' => $cgdCode, "stock_id" => isset($stoc['id']) ? $stoc['id'] : Db::name("good_stock")->getLastInsID(), "type" => 1,
|
|
$good_data[] = ['good_log_code' => $cgdCode, "stock_id" => isset($stoc['id']) ? $stoc['id'] : Db::name("good_stock")->getLastInsID(), "type" => 1,
|
|
'stock' => $data['good_num'], "stock_name" => "wait_in_stock"];
|
|
'stock' => $data['good_num'], "stock_name" => "wait_in_stock"];
|
|
@@ -627,7 +614,7 @@ class Sale extends Base
|
|
return true;
|
|
return true;
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
- return false;
|
|
|
|
|
|
+ throw new Exception("采购单生成失败");
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
}
|
|
@@ -655,8 +642,15 @@ class Sale extends Base
|
|
$userCommon= new \app\admin\common\User();
|
|
$userCommon= new \app\admin\common\User();
|
|
Db::startTrans();
|
|
Db::startTrans();
|
|
try {
|
|
try {
|
|
-
|
|
|
|
|
|
+ $GoodModel=Db::name("good");
|
|
|
|
+ if(in_array($etid['order_type'],[3,4])){
|
|
|
|
+ $GoodModel=Db::name("good_zixun");
|
|
|
|
+ }
|
|
|
|
+ $goodStock=$GoodModel->where(["spuCode"=>$etid['good_code']])->lock(true)->findOrEmpty();
|
|
$i=1;
|
|
$i=1;
|
|
|
|
+ $goodStock_num =$goodStock['usable_stock']??0;
|
|
|
|
+ $total_num = array_sum(array_column($addrlist,"receipt_quantity"));
|
|
|
|
+ if($goodStock_num<$total_num && $etid['is_stock'] == 1) throw new Exception("库存品库存数不足发货");
|
|
foreach ($addrlist as $value) {
|
|
foreach ($addrlist as $value) {
|
|
$temp = [];
|
|
$temp = [];
|
|
$addrs = [];
|
|
$addrs = [];
|
|
@@ -686,107 +680,43 @@ class Sale extends Base
|
|
if ($vmp > 0) {
|
|
if ($vmp > 0) {
|
|
$num = $value['receipt_quantity'];
|
|
$num = $value['receipt_quantity'];
|
|
$outCode = makeNo("DF");
|
|
$outCode = makeNo("DF");
|
|
- //维护商品所在仓库的库存 --- start
|
|
|
|
- if ($etid['is_stock'] != 1){
|
|
|
|
- $order = Db::name("order_num")->where(["orderCode" => $orderCode, "status" => 1])->where([["wsend_num", ">=", 0]])
|
|
|
|
- ->find();
|
|
|
|
- if (empty($order) || $order['wsend_num'] < $num) {
|
|
|
|
- return error_show(1004, "未找到可以发货得采购单数据");
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- //改变编码规则,将原来的outCode后两位换成序列号
|
|
|
|
|
|
+ //改变编码规则,将原来的outCode后两位换成序列号
|
|
//str_pad字符串填充
|
|
//str_pad字符串填充
|
|
$outCode = substr($outCode, 0, -2) . str_pad($i, 2, '0', STR_PAD_LEFT);
|
|
$outCode = substr($outCode, 0, -2) . str_pad($i, 2, '0', STR_PAD_LEFT);
|
|
$i++;
|
|
$i++;
|
|
-
|
|
|
|
- $order['send_num'] += $num;
|
|
|
|
- $order['wsend_num'] -= $num;
|
|
|
|
- $or = Db::name("order_num")->save($order);
|
|
|
|
- if ($or == false) {
|
|
|
|
- Db::rollback();
|
|
|
|
- return error_show(1002, "发货地址添加创建失败");
|
|
|
|
- }
|
|
|
|
- $tep = [
|
|
|
|
- "cgdNo" => $order['cgdNo'],
|
|
|
|
- "outCode" => $outCode,
|
|
|
|
- "send_num" => $num,
|
|
|
|
- "status" => 1,
|
|
|
|
- "addtime" => date("Y-m-d H:i:s"),
|
|
|
|
- "updatetime" => date("Y-m-d H:i:s")
|
|
|
|
- ];
|
|
|
|
- $sen = Db::name("order_send")->save($tep);
|
|
|
|
- if ($sen == false) {
|
|
|
|
- Db::rollback();
|
|
|
|
- return error_show(1002, "发货地址添加创建失败");
|
|
|
|
- }
|
|
|
|
- $cgdinfo = Db::name("purchease_order")->where(["cgdNo" => $order['cgdNo']])->find();
|
|
|
|
- if ($cgdinfo == false) {
|
|
|
|
- Db::rollback();
|
|
|
|
- return error_show(1002, "未匹配到采购数据");
|
|
|
|
- }
|
|
|
|
- $temp = Db::name('good_stock')
|
|
|
|
- ->field('id,usable_stock,wait_out_stock')
|
|
|
|
- ->where(['spuCode' => $etid['good_code'], 'wsm_code' => $cgdinfo['wsm_code']])
|
|
|
|
- ->find();
|
|
|
|
- //非库存品 导入地址生成发货单时占用库存 可用库存进入待出库
|
|
|
|
- if ($temp == false || ($temp['usable_stock'] - $num) < 0) {
|
|
|
|
- $status = 0;
|
|
|
|
|
|
+ //维护商品所在仓库的库存 --- start
|
|
|
|
+ if ($etid['is_stock'] != 1){
|
|
|
|
+ //查找关联采购单
|
|
|
|
+ $order = Db::name("order_num")->where(["orderCode" => $orderCode, "status" => 1])->findOrEmpty();
|
|
|
|
+ if (empty($order)) {
|
|
|
|
+ throw new Exception("未找到可以发货得采购单数据");
|
|
|
|
+ }
|
|
|
|
+ $tep = [
|
|
|
|
+ "cgdNo" => $order['cgdNo'],
|
|
|
|
+ "outCode" => $outCode,
|
|
|
|
+ "send_num" => $num,
|
|
|
|
+ "status" => 1,
|
|
|
|
+ "addtime" => date("Y-m-d H:i:s"),
|
|
|
|
+ "updatetime" => date("Y-m-d H:i:s")
|
|
|
|
+ ];
|
|
|
|
+ $sen = Db::name("order_send")->save($tep);
|
|
|
|
+ if ($sen == false) {
|
|
|
|
+ throw new Exception("发货地址添加创建失败");
|
|
|
|
+ }
|
|
|
|
+ $cgdinfo = Db::name("purchease_order")->where(["cgdNo" => $order['cgdNo']])->find();
|
|
|
|
+ if ($cgdinfo == false) {
|
|
|
|
+ throw new Exception("采购单数据不存在");
|
|
|
|
+ }
|
|
|
|
+ if ($goodStock_num==0) {
|
|
|
|
+ $status = 0;
|
|
} else {
|
|
} else {
|
|
- if (($temp['usable_stock'] - $num) < 0) {
|
|
|
|
- Db::rollback();
|
|
|
|
- return error_show(1004, '库存不足');
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- $up = Db::name('good_stock')
|
|
|
|
- ->where('id', $temp['id'])
|
|
|
|
- ->update([
|
|
|
|
- 'usable_stock' => $temp['usable_stock'] - $num,
|
|
|
|
- 'wait_out_stock' => $temp['wait_out_stock'] + $num,
|
|
|
|
- 'updatetime' => date('Y-m-d H:i:s'),
|
|
|
|
- ]);
|
|
|
|
- if ($up == false) {
|
|
|
|
- Db::rollback();
|
|
|
|
- return error_show(1004, '库存更新失败');
|
|
|
|
- }
|
|
|
|
- $good_data[] = ['good_log_code' => $outCode, "stock_id" => $temp['id'], "type" => 1, 'stock' => $num, "stock_name" => "wait_out_stock"];
|
|
|
|
- $good_data[] = ['good_log_code' => $outCode, "stock_id" => $temp['id'], "type" => 2, 'stock' => $num, "stock_name" => "usable_stock"];
|
|
|
|
- GoodLog::LogAdd(['id'=>$this->uid,'nickname'=>$this->uname], $good_data, "CKD");
|
|
|
|
|
|
+ if (($goodStock_num - $num) < 0)throw new Exception("非库存品可用库存不足");
|
|
|
|
+ $goodStock_num =- $num;
|
|
$status = 1;
|
|
$status = 1;
|
|
}
|
|
}
|
|
}else{
|
|
}else{
|
|
- $order = Db::name("order_num")->where(["orderCode" => $orderCode, "status" => 1])->where([["wsend_num", ">=", 0]])
|
|
|
|
- ->find();
|
|
|
|
- if($order!=false){
|
|
|
|
- $outCode = substr($outCode, 0, -2) . str_pad($i, 2, '0', STR_PAD_LEFT);
|
|
|
|
- $i++;
|
|
|
|
-
|
|
|
|
- $order['send_num'] += $num;
|
|
|
|
- $order['wsend_num'] -= $num;
|
|
|
|
- $or = Db::name("order_num")->save($order);
|
|
|
|
- if ($or == false) {
|
|
|
|
- Db::rollback();
|
|
|
|
- return error_show(1002, "发货地址添加创建失败");
|
|
|
|
- }
|
|
|
|
- $tep = [
|
|
|
|
- "cgdNo" => $order['cgdNo'],
|
|
|
|
- "outCode" => $outCode,
|
|
|
|
- "send_num" => $num,
|
|
|
|
- "status" => 1,
|
|
|
|
- "addtime" => date("Y-m-d H:i:s"),
|
|
|
|
- "updatetime" => date("Y-m-d H:i:s")
|
|
|
|
- ];
|
|
|
|
- $sen = Db::name("order_send")->save($tep);
|
|
|
|
- if ($sen == false) {
|
|
|
|
- Db::rollback();
|
|
|
|
- return error_show(1002, "发货地址添加创建失败");
|
|
|
|
- }
|
|
|
|
- $cgdinfo = Db::name("purchease_order")->where(["cgdNo" => $order['cgdNo']])->find();
|
|
|
|
- if ($cgdinfo == false) {
|
|
|
|
- Db::rollback();
|
|
|
|
- return error_show(1002, "未匹配到采购数据");
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
|
|
+ if ($goodStock_num==0 ||($goodStock_num - $num) < 0)throw new Exception("库存品可用库存不足");
|
|
|
|
+ $goodStock_num =- $num;
|
|
$status=1;
|
|
$status=1;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -811,8 +741,8 @@ class Sale extends Base
|
|
];
|
|
];
|
|
$ou = Db::name("order_out")->insertGetId($out);
|
|
$ou = Db::name("order_out")->insertGetId($out);
|
|
if ($ou == false) {
|
|
if ($ou == false) {
|
|
- Db::rollback();
|
|
|
|
- return error_show(1002, "发货地址添加创建失败");
|
|
|
|
|
|
+ throw new Exception("发货单创建失败");
|
|
|
|
+// return error_show(1002, "发货地址添加创建失败");
|
|
} else {
|
|
} else {
|
|
//修改状态,添加待办
|
|
//修改状态,添加待办
|
|
ActionLog::logAdd(['id'=>$rm,'nickname'=>$ri], [
|
|
ActionLog::logAdd(['id'=>$rm,'nickname'=>$ri], [
|
|
@@ -888,11 +818,8 @@ class Sale extends Base
|
|
return error_show(1002, "发货地址添加创建失败");
|
|
return error_show(1002, "发货地址添加创建失败");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
-// $OrderBn = GoodStockInfo::OrderBn($orderCode,$stock_id,$num);
|
|
|
|
-// if($OrderBn==false){
|
|
|
|
-// Db::rollback();
|
|
|
|
-// return error_show(1004,"Bn库存数关联订单失败");
|
|
|
|
-// }
|
|
|
|
|
|
+ $usable = $GoodModel->where($goodStock)->update(["usable_stock"=>$goodStock_num,"updatetime"=>date("Y-m-d H:i:s")]);
|
|
|
|
+ if($usable==false) throw new Exception("商品可用库存数更新失败");
|
|
Db::commit();
|
|
Db::commit();
|
|
return app_show(0, "发货地址添加完成");
|
|
return app_show(0, "发货地址添加完成");
|
|
} catch (\Exception $e) {
|
|
} catch (\Exception $e) {
|