diff --git a/app/Domains/Real/Commands/Sync/PackageSync.php b/app/Domains/Real/Commands/Sync/PackageSync.php index 44abefd9..d8c1af53 100644 --- a/app/Domains/Real/Commands/Sync/PackageSync.php +++ b/app/Domains/Real/Commands/Sync/PackageSync.php @@ -39,8 +39,9 @@ class PackageSync extends Command $flowPackages = $this->getFlowPackages(); $optionalPackages = $this->getOptionalPackages(); $additionalPackages = $this->getAdditionalPackages(); + $groupPackages = $this->getGroupPackages(); - $packages = array_merge($renewalPackages, $flowPackages, $optionalPackages, $additionalPackages); + $packages = array_merge($renewalPackages, $flowPackages, $optionalPackages, $additionalPackages, $groupPackages); Package::upsert($packages, ['sn', 'deleted_at']); @@ -204,6 +205,33 @@ class PackageSync extends Command return $this->transform($packages); } + // 组合包 + protected function getGroupPackages() + { + $select = [ + DB::raw('6 as type'), + 'jxc_package_addoptional.bag_number as sn', + 'jxc_package_addoptional.name as name', + DB::raw('"qw" as carrier_operator'), + DB::raw('0 as cost_price'), + 'jxc_package_addoptional.guide_price as guide_price', + DB::raw('0 as flows'), + 'jxc_package_addoptional.content_count as messages', + 'jxc_package_addoptional.reset_cycle as reset_months', + 'jxc_package_addoptional.service_cycle as service_months', + 'jxc_package_addoptional.create_time as created_at', + 'jxc_package_addoptional.del', + ]; + + $packages = DB::connection('real')->table('jxc_package_addoptional')->join('jxc_package_value_add_relation', function ($join) { + $join->on('jxc_package_value_add_relation.value_add_number', '=', 'jxc_package_addoptional.bag_number') + ->whereIn('jxc_package_value_add_relation.custom_no', $this->companies) + ->where('jxc_package_value_add_relation.type', 4); + })->select($select)->where('jxc_package_addoptional.tid', 1)->get(); + + return $this->transform($packages); + } + protected function transform($packages) { $packages = $packages->toArray(); diff --git a/database/migrations/2018_12_24_164434_create_real_order_cards_table.php b/database/migrations/2018_12_24_164434_create_real_order_cards_table.php index a90aef55..d7bc65dd 100644 --- a/database/migrations/2018_12_24_164434_create_real_order_cards_table.php +++ b/database/migrations/2018_12_24_164434_create_real_order_cards_table.php @@ -40,6 +40,7 @@ class CreateRealOrderCardsTable extends Migration $table->addPartition('real_order_flows_package_cards', 'list', [3]); $table->addPartition('real_order_optional_package_cards', 'list', [4]); $table->addPartition('real_order_additional_package_cards', 'list', [5]); + $table->addPartition('real_order_group_package_cards', 'list', [6]); }); Schema::table('real_order_cards', function (Blueprint $table) { @@ -66,6 +67,10 @@ class CreateRealOrderCardsTable extends Migration Schema::table('real_order_additional_package_cards', function (Blueprint $table) { $table->unique(['sim', 'order_id', 'deleted_at']); }); + + Schema::table('real_order_group_package_cards', function (Blueprint $table) { + $table->unique(['sim', 'order_id', 'deleted_at']); + }); } /** diff --git a/storage/app/public/templates/import-flows.xls b/storage/app/public/templates/import-flows.xls index c35c8081..bb73db55 100644 Binary files a/storage/app/public/templates/import-flows.xls and b/storage/app/public/templates/import-flows.xls differ