|
@@ -50,6 +50,8 @@ class ImportOrderFromCHandleData extends Command
|
|
|
Db::startTrans();
|
|
|
try {
|
|
|
|
|
|
+ $standing_book_data = [];
|
|
|
+
|
|
|
//先找用户确认信息
|
|
|
$extend_data = Db::name('order_import_from_c_extend')
|
|
|
->where(['order_import_from_c_id' => $c_data['id'], 'is_del' => 0, 'type' => 2])
|
|
@@ -254,15 +256,28 @@ class ImportOrderFromCHandleData extends Command
|
|
|
if ($actupp == false) throw new Exception('活动库存修改失败');
|
|
|
|
|
|
}
|
|
|
+
|
|
|
+ //补充台账数据
|
|
|
+ $standing_book_data = array_merge($standing_book_data, [
|
|
|
+ 'orderCode' => $orderCode,
|
|
|
+// 'outCode'=>,
|
|
|
+// 'cgdNo'=>,
|
|
|
+ 'spuCode' => $data['good_code'],
|
|
|
+ 'skuCode' => $data['skuCode'],
|
|
|
+ 'order_type' => $data['order_type'],
|
|
|
+ 'supplierNo' => $data['supplierNo'],
|
|
|
+ 'companyNo' => $extend_data['companyNo'],
|
|
|
+ 'customer_code' => $data['customer_code'],
|
|
|
+ ]);
|
|
|
if ($is_stock == 0) {
|
|
|
|
|
|
//非库存品
|
|
|
- $bol = $this->createCgd($cgd, $rm, $ri);
|
|
|
+ $bol = $this->createCgd($cgd, $rm, $ri, $standing_book_data);
|
|
|
if ($bol == false) throw new Exception('订单创建失败');
|
|
|
|
|
|
} else {
|
|
|
//库存品
|
|
|
- $bol = $this->RelaCgd(['orderCode' => $orderCode, "good_num" => $good_num, "spuCode" => $spuCode, "companyNo" => $supplierNo, 'order_type' => $order_type]);
|
|
|
+ $bol = $this->RelaCgd(['orderCode' => $orderCode, "good_num" => $good_num, "spuCode" => $spuCode, "companyNo" => $supplierNo, 'order_type' => $order_type], $standing_book_data);
|
|
|
if ($bol == false) throw new Exception('库存商品关联采购单失败');
|
|
|
|
|
|
if (isset($stock)) {
|
|
@@ -366,6 +381,8 @@ class ImportOrderFromCHandleData extends Command
|
|
|
"order_status" => 0,
|
|
|
"before_status" => 0
|
|
|
]);
|
|
|
+
|
|
|
+ $standing_book_data['outCode'] = $outCode;
|
|
|
}
|
|
|
} else throw new Exception('发货地址添加失败');
|
|
|
}
|
|
@@ -386,6 +403,10 @@ class ImportOrderFromCHandleData extends Command
|
|
|
'orderCode' => $orderCode
|
|
|
]);
|
|
|
|
|
|
+ //维护台账记录
|
|
|
+ if (isset($standing_book_data['bk_code'])) Db::name('standing_book')->where('bk_code', $standing_book_data['bk_code'])->update(array_merge($standing_book_data, ['updatetime' => date('Y-m-d H:i:s')]));
|
|
|
+ else Db::name('standing_book')->insert(array_merge($standing_book_data, ['addtime' => date('Y-m-d H:i:s'), 'updatetime' => date('Y-m-d H:i:s')]));
|
|
|
+
|
|
|
Db::commit();
|
|
|
|
|
|
$output->writeln(date('Y-m-d H:i:s') . '|处理成功');
|
|
@@ -411,11 +432,10 @@ class ImportOrderFromCHandleData extends Command
|
|
|
|
|
|
|
|
|
//创建采购单
|
|
|
- private function createCgd($data = [], $rm = '0', $ri = '')
|
|
|
+ private function createCgd($data = [], $rm = '0', $ri = '', array &$standing_book_data = [])
|
|
|
{
|
|
|
$cgdCode = makeNo("CG");
|
|
|
- $supplier = Db::name("supplier")
|
|
|
- ->where(["code" => $data['supplierNo'], "is_del" => 0])->find();
|
|
|
+ $supplier = Db::name("supplier")->where(["code" => $data['supplierNo'], "is_del" => 0])->find();
|
|
|
if ($supplier == false) return false;
|
|
|
|
|
|
$wsm = Db::name("warehouse_info")
|
|
@@ -505,6 +525,8 @@ class ImportOrderFromCHandleData extends Command
|
|
|
"before_status" => 0
|
|
|
]);
|
|
|
|
|
|
+ $standing_book_data['cgdNo'] = $cgdCode;
|
|
|
+
|
|
|
$rela = [
|
|
|
"orderCode" => $data['orderCode'],
|
|
|
"cgdNo" => $cgdCode,
|
|
@@ -554,7 +576,7 @@ class ImportOrderFromCHandleData extends Command
|
|
|
|
|
|
|
|
|
//创建.....
|
|
|
- private function RelaCgd(array $outinfo = [])
|
|
|
+ private function RelaCgd(array $outinfo = [], array &$standing_book_data = [])
|
|
|
{
|
|
|
//备库单
|
|
|
$cgd = Db::name("order_bk")
|
|
@@ -615,6 +637,11 @@ class ImportOrderFromCHandleData extends Command
|
|
|
$insetrCgd = Db::name("purchease_order")->insert($QrdCgd);
|
|
|
if ($insetrCgd == false) return false;
|
|
|
|
|
|
+ $standing_book_data = array_merge($standing_book_data, [
|
|
|
+ 'cgdNo' => $QrdCgd['cgdNo'],
|
|
|
+ 'bk_code' => $QrdCgd['bkcode'],
|
|
|
+ ]);
|
|
|
+
|
|
|
$merge_num = Db::name("purchease_order")
|
|
|
->where(["bkcode" => $cgdinfo['bkcode'], "order_type" => $outinfo['order_type'], "is_del" => 0])
|
|
|
->field("sum(send_num)-sum(th_num) as num")
|