|
@@ -59,6 +59,9 @@ class GoodsService
|
|
|
|
|
|
foreach ($rows as &$row) {
|
|
|
$row['goods_cover'] = getenv('STORAGE_DOMAIN') . $row['goods_cover'];
|
|
|
+ if (isset($row['running'])){
|
|
|
+ $row['running']['goods_running_storage'] = intval($row['running']['goods_running_storage']);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
return json_success('', compact('rows', 'page', 'pageSize', 'total'));
|
|
@@ -260,9 +263,22 @@ class GoodsService
|
|
|
}
|
|
|
|
|
|
if ($data['is_support_appointment'] == 'Y') {
|
|
|
- $extendJson = json_decode($data['goods_extend_json'], true);
|
|
|
- if (isset($extendJson['times'])){
|
|
|
- $data['appointment_times'] = $extendJson['times'];
|
|
|
+ $extendJson = json_decode($data['goods_attribute_json'], true);
|
|
|
+ $data['dates'] = $extendJson['dates'] ?? [];
|
|
|
+ if (isset($extendJson['times'])) {
|
|
|
+ $times = [];
|
|
|
+ foreach ($extendJson['times'] as $time) {
|
|
|
+ if (!empty($time['duration'])) {
|
|
|
+ $startEndTime = explode('-', $time['duration']);
|
|
|
+ $times[] = [
|
|
|
+ 'person' => $time['person'],
|
|
|
+ 'appointmentTimeStart' => $startEndTime[0],
|
|
|
+ 'appointmentTimeEnd' => $startEndTime[1],
|
|
|
+ ];
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ $data['appointment_times'] = $times;
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -609,8 +625,8 @@ class GoodsService
|
|
|
$model->goods_category = $params['goods_category'] ?? '';
|
|
|
$model->goods_prefix = $params['goods_prefix'] ?? '';
|
|
|
$model->goods_name = $params['goods_name'];
|
|
|
- $model->goods_market_price = $params['goods_market_price'] ?? '';
|
|
|
- $model->goods_sales_price = $params['goods_sales_price'] ?? '';
|
|
|
+ $model->goods_market_price = $params['goods_market_price'] ?? 0;
|
|
|
+ $model->goods_sales_price = $params['goods_sales_price'] ?? 0;
|
|
|
$model->goods_sku_json = !empty($params['goods_sku_json_label']) ? json_encode($params['goods_sku_json_label']) : json_encode(['规格' => []]);
|
|
|
$model->goods_attribute_json = !empty($params['goods_attribute_json']) ? $params['goods_attribute_json'] : '{}';
|
|
|
// $model->goods_service_json = !empty($params['goods_service_json']) ? $params['goods_service_json'] : '{}';
|
|
@@ -621,12 +637,23 @@ class GoodsService
|
|
|
$model->goods_groupby = $params['goods_groupby'] ?? '';
|
|
|
$model->goods_remark = $params['goods_remark'] ?? '';
|
|
|
$model->goods_extend_json = $params['goods_extend_json'] ?? '{}';
|
|
|
+ $model->is_support_appointment = $params['is_support_appointment'] ?? 'N';
|
|
|
$model->goods_addtimes = time();
|
|
|
|
|
|
- if (!empty($params['is_support_appointment']) && $params['is_support_appointment'] == 'Y' && !empty($params['appointment_times'])) {
|
|
|
- $model->goods_extend_json = [
|
|
|
- 'times' => $params['appointment_times']
|
|
|
- ];
|
|
|
+ if (!empty($params['is_support_appointment']) && $params['is_support_appointment'] == 'Y' && !empty($params['appointment_times'])) {
|
|
|
+ $times = [];
|
|
|
+ foreach ($params['appointment_times'] as $time) {
|
|
|
+ $times[$time['appointmentTimeStart']] = [
|
|
|
+ 'person' => $time['person'],
|
|
|
+ 'duration' => $time['appointmentTimeStart'] . '-' . $time['appointmentTimeEnd']
|
|
|
+ ];
|
|
|
+ }
|
|
|
+ $model->goods_attribute_json = json_encode([
|
|
|
+ 'icon' => '',
|
|
|
+ 'dates' => $params['dates'] ?? [],
|
|
|
+ 'times' => $times
|
|
|
+ ]);
|
|
|
+ dump($model->goods_attribute_json);
|
|
|
}
|
|
|
if ($model->save()) {
|
|
|
return $model->goods_id;
|
|
@@ -816,10 +843,19 @@ class GoodsService
|
|
|
$newKey = Goods::LISTING_KEY_PREFIX . date('YmdHi', $data['goods_on_addtimes']);
|
|
|
$redis->sadd($newKey, $data['goods_id']);
|
|
|
}
|
|
|
- if (!empty($params['is_support_appointment']) && $params['is_support_appointment'] == 'Y' && !empty($params['appointment_times'])) {
|
|
|
- $data['goods_extend_json'] = [
|
|
|
- 'times' => $params['appointment_times']
|
|
|
- ];
|
|
|
+ if (!empty($params['is_support_appointment']) && $params['is_support_appointment'] == 'Y' && !empty($params['appointment_times'])) {
|
|
|
+ $times = [];
|
|
|
+ foreach ($params['appointment_times'] as $time) {
|
|
|
+ $times[$time['appointmentTimeStart']] = [
|
|
|
+ 'person' => $time['person'],
|
|
|
+ 'duration' => $time['appointmentTimeStart'] . '-' . $time['appointmentTimeEnd']
|
|
|
+ ];
|
|
|
+ }
|
|
|
+ $data['goods_attribute_json'] = json_encode([
|
|
|
+ 'icon' => '',
|
|
|
+ 'dates' => $params['dates'] ?? [],
|
|
|
+ 'times' => $times
|
|
|
+ ]);
|
|
|
}
|
|
|
foreach ($data as $key => $val) {
|
|
|
$row->{$key} = $val;
|
|
@@ -977,7 +1013,7 @@ class GoodsService
|
|
|
$model->goods_sku_status = $params['goods_status'];
|
|
|
$model->goods_sku_specs_json = json_encode($skuArr);
|
|
|
$model->goods_sku_title = str_replace('-', ',', $item['sku']) . $params['goods_name'];
|
|
|
- $model->goods_sku_market_price = $params['goods_market_price'];
|
|
|
+ $model->goods_sku_market_price = $params['goods_market_price'] ?? 0;
|
|
|
$model->goods_sku_sales_price = $item['price'];
|
|
|
$model->goods_sku_storage_json = json_encode(['storage' => $item['stock']]);
|
|
|
$model->save();
|