|
@@ -900,26 +900,27 @@ class LowPriceGoods extends Controller
|
|
|
$sheet->setCellValue('B2', '责任人姓名');
|
|
$sheet->setCellValue('B2', '责任人姓名');
|
|
|
$sheet->setCellValue('C2', '平台名称*');
|
|
$sheet->setCellValue('C2', '平台名称*');
|
|
|
$sheet->setCellValue('D2', '商品分类名称');
|
|
$sheet->setCellValue('D2', '商品分类名称');
|
|
|
- $sheet->setCellValue('E2', '商品名称*');
|
|
|
|
|
- $sheet->setCellValue('F2', '商品规格*');
|
|
|
|
|
- $sheet->setCellValue('G2', '监控价格*');
|
|
|
|
|
- $sheet->setCellValue('H2', '挂网价格*');
|
|
|
|
|
- $sheet->setCellValue('I2', '销量');
|
|
|
|
|
- $sheet->setCellValue('J2', '库存');
|
|
|
|
|
- $sheet->setCellValue('K2', '快照URL');
|
|
|
|
|
- $sheet->setCellValue('L2', '累计挂网次数');
|
|
|
|
|
- $sheet->setCellValue('M2', '连续挂网次数');
|
|
|
|
|
- $sheet->setCellValue('N2', '链接地址*');
|
|
|
|
|
- $sheet->setCellValue('O2', '店铺名称*');
|
|
|
|
|
- $sheet->setCellValue('P2', '公司名称*');
|
|
|
|
|
- $sheet->setCellValue('Q2', '公司分类名称');
|
|
|
|
|
- $sheet->setCellValue('R2', '信用代码');
|
|
|
|
|
- $sheet->setCellValue('S2', '省份');
|
|
|
|
|
- $sheet->setCellValue('T2', '城市');
|
|
|
|
|
- $sheet->setCellValue('U2', '溯源责任人');
|
|
|
|
|
- $sheet->setCellValue('V2', '检索采集日期(Y-m-d)*');
|
|
|
|
|
- $sheet->setCellValue('W2', '发货省份');
|
|
|
|
|
- $sheet->setCellValue('X2', '发货城市');
|
|
|
|
|
|
|
+ $sheet->setCellValue('E2', '品牌名称');
|
|
|
|
|
+ $sheet->setCellValue('F2', '商品名称*');
|
|
|
|
|
+ $sheet->setCellValue('G2', '商品规格*');
|
|
|
|
|
+ $sheet->setCellValue('H2', '监控价格*');
|
|
|
|
|
+ $sheet->setCellValue('I2', '挂网价格*');
|
|
|
|
|
+ $sheet->setCellValue('J2', '销量');
|
|
|
|
|
+ $sheet->setCellValue('K2', '库存');
|
|
|
|
|
+ $sheet->setCellValue('L2', '快照URL');
|
|
|
|
|
+ $sheet->setCellValue('M2', '累计挂网次数');
|
|
|
|
|
+ $sheet->setCellValue('N2', '连续挂网次数');
|
|
|
|
|
+ $sheet->setCellValue('O2', '链接地址*');
|
|
|
|
|
+ $sheet->setCellValue('P2', '店铺名称*');
|
|
|
|
|
+ $sheet->setCellValue('Q2', '公司名称*');
|
|
|
|
|
+ $sheet->setCellValue('R2', '公司分类名称');
|
|
|
|
|
+ $sheet->setCellValue('S2', '信用代码');
|
|
|
|
|
+ $sheet->setCellValue('T2', '省份');
|
|
|
|
|
+ $sheet->setCellValue('U2', '城市');
|
|
|
|
|
+ $sheet->setCellValue('V2', '溯源责任人');
|
|
|
|
|
+ $sheet->setCellValue('W2', '检索采集日期(Y-m-d)*');
|
|
|
|
|
+ $sheet->setCellValue('X2', '发货省份');
|
|
|
|
|
+ $sheet->setCellValue('Y2', '发货城市');
|
|
|
// 生成 Excel 文件
|
|
// 生成 Excel 文件
|
|
|
$writer = new Xlsx($spreadsheet);
|
|
$writer = new Xlsx($spreadsheet);
|
|
|
|
|
|
|
@@ -997,7 +998,7 @@ class LowPriceGoods extends Controller
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
$source_responsible_person_id = [];
|
|
$source_responsible_person_id = [];
|
|
|
- $source_responsible_person_name = $item[20];
|
|
|
|
|
|
|
+ $source_responsible_person_name = $item[21];
|
|
|
if ($source_responsible_person_name) {
|
|
if ($source_responsible_person_name) {
|
|
|
$source_responsible_person_name = explode(',', $source_responsible_person_name);
|
|
$source_responsible_person_name = explode(',', $source_responsible_person_name);
|
|
|
foreach ($source_responsible_person_name as $k => $v) {
|
|
foreach ($source_responsible_person_name as $k => $v) {
|
|
@@ -1007,7 +1008,7 @@ class LowPriceGoods extends Controller
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
- $province_name = $item[18];
|
|
|
|
|
|
|
+ $province_name = $item[19];
|
|
|
//特殊地区1级移除市
|
|
//特殊地区1级移除市
|
|
|
if ($province_name && in_array($province_name, ['北京市', '天津市', '上海市', '重庆市'])) {
|
|
if ($province_name && in_array($province_name, ['北京市', '天津市', '上海市', '重庆市'])) {
|
|
|
//移除市这个字符
|
|
//移除市这个字符
|
|
@@ -1040,11 +1041,11 @@ class LowPriceGoods extends Controller
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
if (!empty($province_name) && !isset($province_id_data[$province_name])) return json_send(['code' => 'error', 'msg' => "第{$key_num}行省份信息不完整", 'data' => $item]);
|
|
if (!empty($province_name) && !isset($province_id_data[$province_name])) return json_send(['code' => 'error', 'msg' => "第{$key_num}行省份信息不完整", 'data' => $item]);
|
|
|
- $city_name = $item[19];
|
|
|
|
|
|
|
+ $city_name = $item[20];
|
|
|
if (!empty($city_name) && !isset($city_id_data[$city_name])) return json_send(['code' => 'error', 'msg' => "第{$key_num}行城市信息不完整", 'data' => $item]);
|
|
if (!empty($city_name) && !isset($city_id_data[$city_name])) return json_send(['code' => 'error', 'msg' => "第{$key_num}行城市信息不完整", 'data' => $item]);
|
|
|
|
|
|
|
|
|
|
|
|
|
- $shipment_province_name = isset($item[22]) ? $item[22] : '';
|
|
|
|
|
|
|
+ $shipment_province_name = isset($item[23]) ? $item[23] : '';
|
|
|
//特殊地区1级移除市
|
|
//特殊地区1级移除市
|
|
|
if ($shipment_province_name && in_array($province_name, ['北京市', '天津市', '上海市', '重庆市'])) {
|
|
if ($shipment_province_name && in_array($province_name, ['北京市', '天津市', '上海市', '重庆市'])) {
|
|
|
//移除市这个字符
|
|
//移除市这个字符
|
|
@@ -1082,7 +1083,7 @@ class LowPriceGoods extends Controller
|
|
|
$shipment_province_id = $province_id_data[$shipment_province_name]['id'];
|
|
$shipment_province_id = $province_id_data[$shipment_province_name]['id'];
|
|
|
}
|
|
}
|
|
|
$shipment_city_id = '0';
|
|
$shipment_city_id = '0';
|
|
|
- $shipment_city_name = isset($item[23]) ? $item[23] : '';
|
|
|
|
|
|
|
+ $shipment_city_name = isset($item[24]) ? $item[24] : '';
|
|
|
if (!isset($city_id_data[$shipment_city_name])) {
|
|
if (!isset($city_id_data[$shipment_city_name])) {
|
|
|
$shipment_city_name = '';
|
|
$shipment_city_name = '';
|
|
|
} else {
|
|
} else {
|
|
@@ -1099,23 +1100,23 @@ class LowPriceGoods extends Controller
|
|
|
$insert_product_data['responsible_person'] = !empty($responsible_person_id) ? implode(',', $responsible_person_id) : ''; //责任人ID集合
|
|
$insert_product_data['responsible_person'] = !empty($responsible_person_id) ? implode(',', $responsible_person_id) : ''; //责任人ID集合
|
|
|
$insert_product_data['platform'] = isset($platform_data[$item[2]]) ? $platform_data[$item[2]] : '0'; // 平台
|
|
$insert_product_data['platform'] = isset($platform_data[$item[2]]) ? $platform_data[$item[2]] : '0'; // 平台
|
|
|
$insert_product_data['category_name'] = $item[3] ? $item[3] : ''; // 商品分类
|
|
$insert_product_data['category_name'] = $item[3] ? $item[3] : ''; // 商品分类
|
|
|
- $insert_product_data['product_name'] = $item[4]; // 商品名称
|
|
|
|
|
- $insert_product_data['product_specs'] = $item[5]; // 商品规格
|
|
|
|
|
- $insert_product_data['suggested_price'] = $item[6]; // 监控价格
|
|
|
|
|
- $insert_product_data['online_posting_price'] = $item[7]; // 挂网价格
|
|
|
|
|
- $insert_product_data['sales'] = isset($item[8]) ? $item[8] : 0; // 销量
|
|
|
|
|
- $insert_product_data['inventory'] = isset($item[9]) ? $item[9] : 0; // 库存
|
|
|
|
|
- $insert_product_data['snapshot_url'] = isset($item[10]) ? $item[10] : ''; // 快照URL
|
|
|
|
|
- $insert_product_data['online_posting_count'] = isset($item[11]) ? $item[11] : 1; // 累计挂网次数
|
|
|
|
|
- $insert_product_data['continuous_listing_count'] = isset($item[12]) ? $item[12] : 1; // 连续挂网次数
|
|
|
|
|
- $insert_product_data['link_url'] = $item[13]; // 链接地址
|
|
|
|
|
- $insert_product_data['store_name'] = $item[14]; // 店铺名称
|
|
|
|
|
- $insert_product_data['company_name'] = $item[15]; // 公司名称
|
|
|
|
|
- $insert_product_data['company_category_name'] = isset($item[16]) ? $item[16] : ''; // 公司分类
|
|
|
|
|
- $insert_product_data['social_credit_code'] = isset($item[17]) ? $item[17] : ''; // 信用代码
|
|
|
|
|
- $insert_product_data['province_name'] = isset($item[18]) ? $item[18] : ''; // 省份
|
|
|
|
|
|
|
+ $insert_product_data['product_name'] = $item[5]; // 商品名称
|
|
|
|
|
+ $insert_product_data['product_specs'] = $item[6]; // 商品规格
|
|
|
|
|
+ $insert_product_data['suggested_price'] = $item[7]; // 监控价格
|
|
|
|
|
+ $insert_product_data['online_posting_price'] = $item[8]; // 挂网价格
|
|
|
|
|
+ $insert_product_data['sales'] = isset($item[9]) ? $item[9] : 0; // 销量
|
|
|
|
|
+ $insert_product_data['inventory'] = isset($item[10]) ? $item[10] : 0; // 库存
|
|
|
|
|
+ $insert_product_data['snapshot_url'] = isset($item[11]) ? $item[11] : ''; // 快照URL
|
|
|
|
|
+ $insert_product_data['online_posting_count'] = isset($item[12]) ? $item[12] : 1; // 累计挂网次数
|
|
|
|
|
+ $insert_product_data['continuous_listing_count'] = isset($item[13]) ? $item[13] : 1; // 连续挂网次数
|
|
|
|
|
+ $insert_product_data['link_url'] = $item[14]; // 链接地址
|
|
|
|
|
+ $insert_product_data['store_name'] = $item[15]; // 店铺名称
|
|
|
|
|
+ $insert_product_data['company_name'] = $item[16]; // 公司名称
|
|
|
|
|
+ $insert_product_data['company_category_name'] = isset($item[17]) ? $item[17] : ''; // 公司分类
|
|
|
|
|
+ $insert_product_data['social_credit_code'] = isset($item[18]) ? $item[18] : ''; // 信用代码
|
|
|
|
|
+ $insert_product_data['province_name'] = isset($item[19]) ? $item[19] : ''; // 省份
|
|
|
$insert_product_data['province_id'] = isset($province_id_data[$province_name]) ? $province_id_data[$province_name]['id'] : 0; // 省份ID
|
|
$insert_product_data['province_id'] = isset($province_id_data[$province_name]) ? $province_id_data[$province_name]['id'] : 0; // 省份ID
|
|
|
- $insert_product_data['city_name'] =isset( $item[19]) ? $item[19] : ''; // 城市
|
|
|
|
|
|
|
+ $insert_product_data['city_name'] =isset( $item[20]) ? $item[20] : ''; // 城市
|
|
|
$insert_product_data['city_id'] = isset($city_id_data[$city_name]) ? $city_id_data[$city_name]['id'] : 0; // 城市ID
|
|
$insert_product_data['city_id'] = isset($city_id_data[$city_name]) ? $city_id_data[$city_name]['id'] : 0; // 城市ID
|
|
|
$insert_product_data['area_info'] = ''; // 详细地址
|
|
$insert_product_data['area_info'] = ''; // 详细地址
|
|
|
$insert_product_data['source_responsible_person'] = !empty($source_responsible_person_id) ? implode(',', $source_responsible_person_id) : ''; //溯源责任人ID集合
|
|
$insert_product_data['source_responsible_person'] = !empty($source_responsible_person_id) ? implode(',', $source_responsible_person_id) : ''; //溯源责任人ID集合
|
|
@@ -1123,7 +1124,7 @@ class LowPriceGoods extends Controller
|
|
|
$insert_product_data['status'] = 0; //状态0=有效=无效
|
|
$insert_product_data['status'] = 0; //状态0=有效=无效
|
|
|
$insert_product_data['insert_time'] = time();
|
|
$insert_product_data['insert_time'] = time();
|
|
|
$insert_product_data['source_id'] = 0; // 原始数据ID
|
|
$insert_product_data['source_id'] = 0; // 原始数据ID
|
|
|
- $insert_product_data['scrape_date'] = $item[21]; // 原始数据类型
|
|
|
|
|
|
|
+ $insert_product_data['scrape_date'] = $item[22]; // 原始数据类型
|
|
|
$insert_product_data['shipment_province_id'] = $shipment_province_id; // 发货省份id
|
|
$insert_product_data['shipment_province_id'] = $shipment_province_id; // 发货省份id
|
|
|
$insert_product_data['shipment_province_name'] = $shipment_province_name; // 发货省份
|
|
$insert_product_data['shipment_province_name'] = $shipment_province_name; // 发货省份
|
|
|
$insert_product_data['shipment_city_id'] = $shipment_city_id; // 发货城市id
|
|
$insert_product_data['shipment_city_id'] = $shipment_city_id; // 发货城市id
|
|
@@ -1154,44 +1155,44 @@ class LowPriceGoods extends Controller
|
|
|
if (!$item[2]) {
|
|
if (!$item[2]) {
|
|
|
return ['code' => 'error', 'msg' => "第{$key}行平台不能为空", 'data' => $item];
|
|
return ['code' => 'error', 'msg' => "第{$key}行平台不能为空", 'data' => $item];
|
|
|
}
|
|
}
|
|
|
- if (!$item[4]) {
|
|
|
|
|
|
|
+ if (!$item[5]) {
|
|
|
return ['code' => 'error', 'msg' => "第{$key}行商品名称不能为空", 'data' => $item];
|
|
return ['code' => 'error', 'msg' => "第{$key}行商品名称不能为空", 'data' => $item];
|
|
|
}
|
|
}
|
|
|
- if (!$item[5]) {
|
|
|
|
|
|
|
+ if (!$item[6]) {
|
|
|
return ['code' => 'error', 'msg' => "第{$key}行商品规格不能为空", 'data' => $item];
|
|
return ['code' => 'error', 'msg' => "第{$key}行商品规格不能为空", 'data' => $item];
|
|
|
}
|
|
}
|
|
|
- if (!$item[6]) {
|
|
|
|
|
|
|
+ if (!$item[7]) {
|
|
|
return ['code' => 'error', 'msg' => "第{$key}行监控价格不能为空", 'data' => $item];
|
|
return ['code' => 'error', 'msg' => "第{$key}行监控价格不能为空", 'data' => $item];
|
|
|
}
|
|
}
|
|
|
- if (!$item[7]) {
|
|
|
|
|
|
|
+ if (!$item[8]) {
|
|
|
return ['code' => 'error', 'msg' => "第{$key}行挂网价格不能为空", 'data' => $item];
|
|
return ['code' => 'error', 'msg' => "第{$key}行挂网价格不能为空", 'data' => $item];
|
|
|
}
|
|
}
|
|
|
- if (!$item[13]) {
|
|
|
|
|
|
|
+ if (!$item[14]) {
|
|
|
return ['code' => 'error', 'msg' => "第{$key}行链接地址不能为空", 'data' => $item];
|
|
return ['code' => 'error', 'msg' => "第{$key}行链接地址不能为空", 'data' => $item];
|
|
|
}
|
|
}
|
|
|
- if (!$item[14]) {
|
|
|
|
|
|
|
+ if (!$item[15]) {
|
|
|
return ['code' => 'error', 'msg' => "第{$key}行店铺名称不能为空", 'data' => $item];
|
|
return ['code' => 'error', 'msg' => "第{$key}行店铺名称不能为空", 'data' => $item];
|
|
|
}
|
|
}
|
|
|
- if (!$item[15]) {
|
|
|
|
|
|
|
+ if (!$item[16]) {
|
|
|
return ['code' => 'error', 'msg' => "第{$key}行公司名称不能为空", 'data' => $item];
|
|
return ['code' => 'error', 'msg' => "第{$key}行公司名称不能为空", 'data' => $item];
|
|
|
}
|
|
}
|
|
|
- // if (!$item[17]) {
|
|
|
|
|
|
|
+ // if (!$item[18]) {
|
|
|
// return ['code' => 'error', 'msg' => "第{$key}行信用代码不能为空", 'data' => $item];
|
|
// return ['code' => 'error', 'msg' => "第{$key}行信用代码不能为空", 'data' => $item];
|
|
|
// }
|
|
// }
|
|
|
- // if (!$item[18]) {
|
|
|
|
|
|
|
+ // if (!$item[19]) {
|
|
|
// return ['code' => 'error', 'msg' => "第{$key}行省份不能为空", 'data' => $item];
|
|
// return ['code' => 'error', 'msg' => "第{$key}行省份不能为空", 'data' => $item];
|
|
|
// }
|
|
// }
|
|
|
- // if (!$item[19]) {
|
|
|
|
|
|
|
+ // if (!$item[20]) {
|
|
|
// return ['code' => 'error', 'msg' => "第{$key}行城市不能为空", 'data' => $item];
|
|
// return ['code' => 'error', 'msg' => "第{$key}行城市不能为空", 'data' => $item];
|
|
|
// }
|
|
// }
|
|
|
- if (!$item[21]) {
|
|
|
|
|
|
|
+ if (!$item[22]) {
|
|
|
return ['code' => 'error', 'msg' => "第{$key}行检索采集日期不能为空", 'data' => $item];
|
|
return ['code' => 'error', 'msg' => "第{$key}行检索采集日期不能为空", 'data' => $item];
|
|
|
} else {
|
|
} else {
|
|
|
//校验格式是否为Y-m-d
|
|
//校验格式是否为Y-m-d
|
|
|
- if (!preg_match('/^[0-9]{4}-[0-9]{2}-[0-9]{2}$/', $item[21])) {
|
|
|
|
|
|
|
+ if (!preg_match('/^[0-9]{4}-[0-9]{2}-[0-9]{2}$/', $item[22])) {
|
|
|
return ['code' => 'error', 'msg' => "第{$key}行检索采集日期格式不正确", 'data' => $item];
|
|
return ['code' => 'error', 'msg' => "第{$key}行检索采集日期格式不正确", 'data' => $item];
|
|
|
}
|
|
}
|
|
|
- if (strtotime($item[21] . ' 00:00:00') > time()) {
|
|
|
|
|
|
|
+ if (strtotime($item[22] . ' 00:00:00') > time()) {
|
|
|
return ['code' => 'error', 'msg' => "第{$key}行检索采集日期不能大于当前日期", 'data' => $item];
|
|
return ['code' => 'error', 'msg' => "第{$key}行检索采集日期不能大于当前日期", 'data' => $item];
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|