75 lines
2.3 KiB
PHP
Raw Normal View History

2022-10-24 09:44:43 +08:00
<?php
namespace App\Services\Business\KuaiTuanTuan;
use App\Models\Groups as GroupsModel;
use App\Models\GroupGoods;
2022-10-24 15:32:44 +08:00
use App\Utils\DateTimeUtils;
2022-10-24 09:44:43 +08:00
class Groups
{
public static function createGroup($localGroupId)
{
$type = 'pdd.ktt.group.create';
$group = GroupsModel::query()->find($localGroupId);
$groupGoods = GroupGoods::query()
->where('group_id', $group->id)
->with(['goodsSku:id,stock'])
2022-10-24 21:30:23 +08:00
->orderBy('sort')
2022-10-24 09:44:43 +08:00
->get();
$goodsSkus = [];
foreach ($groupGoods as $item) {
$goodsSkus[] = [
'category_name' => $item['category_name'],
2022-10-24 14:29:58 +08:00
'goods_desc' => $item['goods_desc'] ?: $group['title'],
2022-10-24 09:44:43 +08:00
'goods_name' => $item['goods_name'],
'limit_buy' => $item['limit_buy'],
'market_price' => $item['market_price'],
2022-10-24 15:32:44 +08:00
'sku_list' => [[
2022-10-24 09:44:43 +08:00
'external_sku_id' => $item['external_sku_id'],
2022-10-24 21:30:23 +08:00
'price_in_fen' => $item['price_in_fen'] * 100,
2022-10-24 09:44:43 +08:00
'quantity_type' => 0,
'spec_id_list' => [],
'total_quantity' => $item['goodsSku']['stock'],
2022-10-24 15:32:44 +08:00
]]
2022-10-24 09:44:43 +08:00
];
}
$appendParams = [
2022-10-24 14:50:01 +08:00
'end_time' => $group->getOriginal('end_time'),
2022-10-24 15:32:44 +08:00
'goods_list' => json_encode($goodsSkus, 256),
2022-10-24 09:44:43 +08:00
'is_save_preview' => $group['is_save_preview'],
2022-10-24 14:50:01 +08:00
'start_time' => $group->getOriginal('start_time'),
2022-10-24 09:44:43 +08:00
'title' => $group['title'],
2022-10-24 21:30:23 +08:00
'isv_no' => $group['activity_no'] ?: '',
2022-10-24 09:44:43 +08:00
];
return [$type, $appendParams];
}
public static function queryGroupStatus($localGroupId)
{
$type = 'pdd.ktt.group.query.status';
$group = GroupsModel::query()->find($localGroupId);
$appendParams = [
'activity_no' => $group->activity_no
];
return [$type, $appendParams];
}
2022-10-24 15:32:44 +08:00
public static function queryGroup()
{
$type = 'pdd.ktt.group.query.list';
$time = DateTimeUtils::getMicroTime();
$appendParams = [
'end_update_time' => $time,
'page' => 1,
'size' => 10,
'start_update_time' => $time - 3600 * 24 * 6 * 1000
];
return [$type, $appendParams];
}
2022-10-24 09:44:43 +08:00
}