|
@@ -4,7 +4,7 @@ namespace app\abutment\controller;
|
|
|
|
|
|
use app\admin\model\ActionLog;
|
|
|
use app\admin\model\GoodLog;
|
|
|
-use app\admin\model\ProcessOrder;
|
|
|
+use app\admin\model\GoodStockInfo;use app\admin\model\ProcessOrder;
|
|
|
use think\Exception;
|
|
|
use think\facade\Db;
|
|
|
use think\facade\Validate;
|
|
@@ -427,7 +427,7 @@ class Order extends HomeBaseController
|
|
|
->whereIn('cgdNo', $param['cgdNo'])
|
|
|
->where(['is_del' => 0, 'supplierNo' => $this->request->user['supplierNo']])
|
|
|
->where('status', '=', 1)
|
|
|
- ->column('id,wsm_code,good_num,spuCode,order_type,send_status,status', 'cgdNo');
|
|
|
+ ->column('id,wsm_code,good_num,good_price,spuCode,order_type,send_status,status', 'cgdNo');
|
|
|
|
|
|
if (empty($cgdinfo)) return json_show(1005, "未找到采购单数据或采购单未发货");
|
|
|
|
|
@@ -453,7 +453,7 @@ class Order extends HomeBaseController
|
|
|
if (empty($cgdinfo[$cgdNo])) throw new Exception('未找到采购单数据或采购单未发货');
|
|
|
|
|
|
$wsm_in_code = makeNo("CF");
|
|
|
-
|
|
|
+ $bn_code = makeNo("BN");
|
|
|
$send_num = $cgdinfo[$cgdNo]['good_num'];
|
|
|
//改变编码规则,将原编码后两位换成序列号
|
|
|
//str_pad字符串填充
|
|
@@ -464,6 +464,7 @@ class Order extends HomeBaseController
|
|
|
$win = Db::name("purchease_in")->insertGetId([
|
|
|
"wsm_in_code" => $wsm_in_code,
|
|
|
"cgdNo" => $cgdNo,
|
|
|
+ "bnCode"=>$bn_code,
|
|
|
"wsm_code" => $cgdinfo[$cgdNo]['wsm_code'],
|
|
|
"wsm_reaper" => isset($recep[$cgdinfo[$cgdNo]['wsm_code']]) ? $recep[$cgdinfo[$cgdNo]['wsm_code']] : '',
|
|
|
"send_num" => $cgdinfo[$cgdNo]['good_num'],
|
|
@@ -528,12 +529,18 @@ class Order extends HomeBaseController
|
|
|
$good['total_stock'] = $good['usable_stock'] + $good['wait_out_stock'];
|
|
|
$good['updatetime'] = date("Y-m-d H:i:s");
|
|
|
$upd = Db::name("good_stock")->save($good);
|
|
|
+ $stockid=$good['id']?? Db::name("good_stock")->getLastInsID();
|
|
|
//商品变动日志表,good_log_code字段存储采购单单号
|
|
|
$good_data[] = ['good_log_code' => $wsm_in_code, "stock_id" => isset($good['id']) ? $good['id'] : Db::name("good_stock")->getLastInsID(), "type" => 1, 'stock' => $send_num, "stock_name" => "usable_stock"];
|
|
|
$good_data[] = ['good_log_code' => $wsm_in_code, "stock_id" => isset($good['id']) ? $good['id'] : Db::name("good_stock")->getLastInsID(), "type" => 2, 'stock' => $send_num, "stock_name" => "wait_in_stock"];
|
|
|
if ($upd) {
|
|
|
GoodLog::LogAdd(['id' => $uid, 'nickname' => $nickname], $good_data, 'RKD');
|
|
|
if ($cgdinfo[$cgdNo]['order_type'] == 1) {
|
|
|
+ $bnin=GoodStockInfo::AddBn($stockid,$bn_code,$send_num,$cgdinfo[$cgdNo]['good_price']);
|
|
|
+ if($bnin==false){
|
|
|
+ Db::rollback();
|
|
|
+ return error_show(1004,"库存bn数据新增失败");
|
|
|
+ }
|
|
|
$bk = Db::name("order_bk")->where(['cgdNo' => $cgdNo])->find();
|
|
|
if ($bk == false) {
|
|
|
$bk = [
|