|
@@ -288,7 +288,7 @@ class Sale extends Base
|
|
|
foreach ($addrlist as $value){
|
|
|
$temp=[];
|
|
|
$addrs=[];
|
|
|
- if($value['addr_code']!==''&&is_array($value['addr_code'])){
|
|
|
+ if($value['addr_code']!==''&&is_array($value['addr_code'])&&!empty($value['addr_code'])){
|
|
|
$addrs['provice_code'] = $value['addr_code'][0];
|
|
|
$addrs['city_code'] = $value['addr_code'][1];
|
|
|
$addrs['area_code'] = $value['addr_code'][2];
|
|
@@ -565,7 +565,7 @@ class Sale extends Base
|
|
|
foreach ($addrlist as $value){
|
|
|
$temp=[];
|
|
|
$addrs=[];
|
|
|
- if($value['addr_code']!==''&&is_array($value['addr_code'])){
|
|
|
+ if($value['addr_code']!==''&&is_array($value['addr_code'])&&!empty($value['addr_code'])){
|
|
|
$addrs['provice_code'] = $value['addr_code'][0];
|
|
|
$addrs['city_code'] = $value['addr_code'][1];
|
|
|
$addrs['area_code'] = $value['addr_code'][2];
|
|
@@ -974,7 +974,7 @@ class Sale extends Base
|
|
|
foreach ($va as $value){
|
|
|
$temp=[];
|
|
|
$addrs=[];
|
|
|
- if($value['addr_code']!==''&&is_array($value['addr_code'])){
|
|
|
+ if($value['addr_code']!==''&&is_array($value['addr_code'])&&!empty($value['addr_code'])){
|
|
|
$addrs['provice_code'] = $value['addr_code'][0];
|
|
|
$addrs['city_code'] = $value['addr_code'][1];
|
|
|
$addrs['area_code'] = $value['addr_code'][2];
|
|
@@ -1418,7 +1418,7 @@ class Sale extends Base
|
|
|
foreach ($data['addrlist'] as $value) {
|
|
|
$temp = [];
|
|
|
$addrs = [];
|
|
|
- if ($value['addr_code'] !== '' && is_array($value['addr_code'])) {
|
|
|
+ if ($value['addr_code'] !== '' && is_array($value['addr_code'])&&!empty($value['addr_code'])) {
|
|
|
$addrs['provice_code'] = $value['addr_code'][0];
|
|
|
$addrs['city_code'] = $value['addr_code'][1];
|
|
|
$addrs['area_code'] = $value['addr_code'][2];
|
|
@@ -1669,7 +1669,7 @@ class Sale extends Base
|
|
|
foreach ($data['addrlist'] as $value) {
|
|
|
$temp = [];
|
|
|
$addrs = [];
|
|
|
- if ($value['addr_code'] !== '' && is_array($value['addr_code'])) {
|
|
|
+ if ($value['addr_code'] !== '' && is_array($value['addr_code'])&&!empty($value['addr_code'])) {
|
|
|
$addrs['provice_code'] = $value['addr_code'][0];
|
|
|
$addrs['city_code'] = $value['addr_code'][1];
|
|
|
$addrs['area_code'] = $value['addr_code'][2];
|
|
@@ -2115,7 +2115,7 @@ class Sale extends Base
|
|
|
foreach ($fo as $value) {
|
|
|
$value['addr_info'] = "";
|
|
|
$value['send_num'] = 0;
|
|
|
- if ($value['addr_code'] != "") {
|
|
|
+ if ($value['addr_code'] != ""&&!empty($value['addr_code'])) {
|
|
|
$place = ["provice_code"=>"","city_code"=>"","area_code"=>""];
|
|
|
list($place['provice_code'],$place['city_code'],$place['area_code'])=explode(",",$value['addr_code']);
|
|
|
$addr = GetAddr(json_encode($place));
|
|
@@ -3241,31 +3241,31 @@ class Sale extends Base
|
|
|
->field('id,usable_stock,wait_out_stock')
|
|
|
->where(['spuCode' => $der['good_code'], 'wsm_code' => $cgd['wsm_code']])
|
|
|
->find();
|
|
|
- if ($temp == false) {
|
|
|
- Db::rollback();
|
|
|
- return error_show(1004, '库存不足');
|
|
|
- }
|
|
|
-
|
|
|
- if (($temp['usable_stock'] - $send_num) < 0) {
|
|
|
+ if (($temp == false ||($temp['usable_stock'] - $send_num) < 0) && $der['send_type']==1) {
|
|
|
Db::rollback();
|
|
|
return error_show(1004, '库存不足');
|
|
|
- }
|
|
|
+ }else{
|
|
|
+ if(($temp == false ||($temp['usable_stock'] - $send_num) < 0) && $der['send_type']==2){
|
|
|
+ $data['status']=0;
|
|
|
+ }else{
|
|
|
+ $up =Db::name('good_stock')
|
|
|
+ ->where('id', $temp['id'])
|
|
|
+ ->update([
|
|
|
+ 'usable_stock' => $temp['usable_stock'] - $send_num,
|
|
|
+ 'wait_out_stock' => $temp['wait_out_stock'] + $send_num,
|
|
|
+ 'updatetime' => date('Y-m-d H:i:s'),
|
|
|
+ ]);
|
|
|
+ if($up==false){
|
|
|
+ Db::rollback();
|
|
|
+ return error_show(1004, '库存更新失败');
|
|
|
+ }
|
|
|
+ // ::todo
|
|
|
+ $good_data[] = ['good_log_code' =>$outCode, "stock_id" =>$temp['id'], "type" => 1,'stock'=>$send_num, "stock_name" => "wait_out_stock"];
|
|
|
+ $good_data[] = ['good_log_code' =>$outCode, "stock_id" =>$temp['id'], "type" => 2,'stock'=>$send_num, "stock_name" => "usable_stock"];
|
|
|
+ GoodLog::LogAdd($this->post['token'],$good_data,"CKD");
|
|
|
+ }
|
|
|
|
|
|
- $up =Db::name('good_stock')
|
|
|
- ->where('id', $temp['id'])
|
|
|
- ->update([
|
|
|
- 'usable_stock' => $temp['usable_stock'] - $send_num,
|
|
|
- 'wait_out_stock' => $temp['wait_out_stock'] + $send_num,
|
|
|
- 'updatetime' => date('Y-m-d H:i:s'),
|
|
|
- ]);
|
|
|
- if($up==false){
|
|
|
- Db::rollback();
|
|
|
- return error_show(1004, '库存更新失败');
|
|
|
}
|
|
|
- // ::todo
|
|
|
- $good_data[] = ['good_log_code' =>$outCode, "stock_id" =>$temp['id'], "type" => 1,'stock'=>$send_num, "stock_name" => "wait_out_stock"];
|
|
|
- $good_data[] = ['good_log_code' =>$outCode, "stock_id" =>$temp['id'], "type" => 2,'stock'=>$send_num, "stock_name" => "usable_stock"];
|
|
|
- GoodLog::LogAdd($this->post['token'],$good_data,"CKD");
|
|
|
}
|
|
|
|
|
|
$datainfo = Db::name('order_out')->insert($data,true);
|