Commit f477dea9 authored by hangjun83's avatar hangjun83

药明康德

parent 28426dfe
<?php
namespace App\Export;
namespace App\ImportExport;
use App\Services\SysLogService;
use App\Support\Facades\SimpleLogs;
use Maatwebsite\Excel\Facades\Excel;
use Maatwebsite\Excel\Excel as BaseExcel;
......@@ -26,14 +27,23 @@ class BaseExport
public function storeExcel($excelContent, $filePath, $diskType = null){
if($diskType == null){
$diskType = config('filesystem.default');
$diskType = config('filesystems.default');
}
$result = Excel::store($excelContent,$filePath,$diskType, $this->expand);
$logContent = [
'filePath' => $filePath,
'diskType' => $diskType,
'datetime' => time()
];
app(SysLogService::class)->addOperationLogs($logContent);
try{
if(Excel::store($excelContent,$filePath,$diskType, $this->expand)){
$logContent = [
'filePath' => $filePath,
'diskType' => $diskType,
'datetime' => time()
];
SimpleLogs::writeLog($logContent,__CLASS__.':storeExcel');
return true;
}
return false;
}catch(\Throwable $exception){
SimpleLogs::writeLog($exception->getMessage(),__CLASS__.':storeExcel', 'error');
throw $exception;
}
}
}
<?php
namespace App\Export\WuxiLab\Models;
namespace App\ImportExport\WuxiLab\Models;
use Maatwebsite\Excel\Concerns\FromArray;
use Maatwebsite\Excel\Concerns\ShouldAutoSize;
......@@ -32,7 +32,7 @@ class WuxiLabPackagesExportModel implements FromArray,WithHeadings, ShouldAutoSi
array_push($exportRows,['','','','','','','','','','','','','','','','','','','']);
foreach($rows as $key => $row){
array_push($exportRows,[
$row['r_code'], '', $row['p_pack'].'/'.$row['p_pack_unit'], $row['p_stock'] == 0 ? '0' : $row['p_stock'], 'CN-SH', $row['p_price'], '0.5',
$row['r_code'], '', $row['p_pack'].''.$row['p_pack_unit'], $row['p_stock'] == 0 ? '0' : $row['p_stock'], 'CN-SH', $row['p_price'], '0.5',
'RMB', 'CN', $row['p_price'] * 0.5
]);
}
......
<?php
namespace App\Export\WuxiLab\Models;
namespace App\ImportExport\WuxiLab\Models;
use Maatwebsite\Excel\Concerns\FromArray;
use Maatwebsite\Excel\Concerns\ShouldAutoSize;
......
<?php
namespace App\Export\WuxiLab\Models;
namespace App\ImportExport\WuxiLab\Models;
use Maatwebsite\Excel\Concerns\FromArray;
use Maatwebsite\Excel\Concerns\ShouldAutoSize;
......
<?php
namespace App\Export\WuxiLab;
namespace App\ImportExport\WuxiLab;
use App\Export\BaseExport;
use App\Export\WuxiLab\Models\WuxiLabPackagesExportModel;
use App\Export\WuxiLab\Models\WuxiLabProductsExportModel;
use App\Export\WuxiLab\Models\WuxiLabStocksExportModel;
use App\ImportExport\BaseExport;
use App\ImportExport\WuxiLab\Models\WuxiLabPackagesExportModel;
use App\ImportExport\WuxiLab\Models\WuxiLabProductsExportModel;
use App\ImportExport\WuxiLab\Models\WuxiLabStocksExportModel;
class WuxiLabExport extends BaseExport
{
......@@ -21,7 +21,7 @@ class WuxiLabExport extends BaseExport
public function getSavePath($fileName)
{
if($this->filePath == ''){
$this->filePath = config('filesystem.default').'/public/Excel/';
$this->filePath = config('filesystems.default.root').'public/Excel/';
}
return $this->filePath.date('Ymd',time()).'/'.$fileName;
}
......@@ -36,32 +36,30 @@ class WuxiLabExport extends BaseExport
* @param $saveContent
* @param null $model
*/
public function saveExcel($saveContent,$model = null)
public function saveExcel($saveContent,$model = 'product')
{
if($model == null){
$model = $this->defaultExportModel;
if(!is_array($model) && $model == null){
throw new \Exception('excel 文档生成错误,无法找到对应生成类型!');
}
if(!is_array($model) && $model != null){
$model = explode(',',$model);
$export = null;
switch($model){
case 'product' :
$export = new WuxiLabProductsExportModel($saveContent['rawList']);
break;
case 'package' :
$export = new WuxiLabPackagesExportModel($saveContent['packageList']);
break;
case 'stock' :
$export = new WuxiLabStocksExportModel($saveContent['packageList']);
break;
}
foreach($model as $m){
switch($m){
case 'product' :
$export = new WuxiLabProductsExportModel($saveContent['rawList']);
break;
case 'package' :
$export = new WuxiLabPackagesExportModel($saveContent['packageList']);
break;
case 'stock' :
$export = new WuxiLabStocksExportModel($saveContent['packageList']);
break;
}
$savePath = $this->getSavePath(
$this->getFileName($m)
);
$this->storeExcel($export,$savePath);
$savePath = $this->getSavePath(
$this->getFileName($model)
);
$result = $this->storeExcel($export,$savePath);
if($result){
return $savePath;
}
}
}
......@@ -47,6 +47,9 @@ class WuxiLabJob extends Job
case 'batchUpdateProduct' :
$service->batchUpdateProducts();
break;
case 'test' :
$service->test($this->params);
break;
default:
}
}
......
......@@ -54,6 +54,19 @@ class RhawnRawRepositoryEloquent extends BaseRepository implements RhawnRawRepos
return $rawList->toArray();
}
public function getRawProductsThroughtCode($rawCode)
{
$raw = RhawnRaw::query()
->join('chemicals', 'chemicals.c_id','raw.c_id');
if(!is_array($rawCode)){
$raw->where('r_code',$rawCode);
}else{
$raw->whereIn('r_code',!is_array($rawCode));
}
$rawList = $raw->get();
return $rawList->toArray();
}
public function getProductPackage($rawProductIds)
{
$packagesList = RhawnProducts::query()
......
......@@ -15,31 +15,6 @@ use Prettus\Validator\Contracts\ValidatorInterface;
*/
class ThirdApiPlatformRepositoryEloquent extends BaseRepository implements ThirdApiPlatformRepository
{
protected $fieldSearchable = [
'platform_name', 'platform_title',
];
/**
* 定义validator的检索规则
* @var \string[][]
*/
public $rules = [
ValidatorInterface::RULE_CREATE => [
'platform_name' => 'required',
'platform_title' => 'required',
'platform_type' => 'required',
'platform_token' => 'required',
'platform_status' => 'required',
],
ValidatorInterface::RULE_UPDATE => [
'platform_name' => 'required',
'platform_title' => 'required',
'platform_type' => 'required',
'platform_token' => 'required',
'platform_status' => 'required',
]
];
/**
* Specify Model class name.
*
......
......@@ -362,7 +362,7 @@ class ZhenkhApiService extends PlatformAbstractService
protected function requestError($response)
{
SimpleLogs::writeLog($response->getMessage(), 'api error', 'error');
SimpleLogs::writeLog($response->getMessage(), 'Zhenkh api error', 'error');
throw $response;
}
......
......@@ -112,6 +112,6 @@ abstract class PlatformAbstractService
public function removePlatformDataEntries($dataKey)
{
return $this->dataEntriesService->removeEntriesValues($dataKey);
return $this->dataEntriesService->removeEntriesValues($this->getPlatformInfo('id'),$dataKey);
}
}
This diff is collapsed.
......@@ -12,7 +12,7 @@ trait HttpClientHelpers
{
$options = [];
$options['headers']['User-Agent'] = $this->randomUserAgent();
$options['headers']['User-Agent'] = 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.71 Safari/537.1 LBBROWSER';
$options['debug'] = env('API_DEBUG');
return $options;
......@@ -44,6 +44,39 @@ trait HttpClientHelpers
return $this->clientRequest('post', $uri, $options);
}
public function getMultipartPostClient($uri, $paramsBody = [], $auth = null, $header = null)
{
$options = [
'headers' => []
];
$paramsOptions = [];
foreach($paramsBody as $key => $params){
if($key != 'file'){
array_push($paramsOptions,[
'name' => $key,
'contents' => $params
]);
}else{
array_push($paramsOptions,[
'name' => 'file',
'filename' => $params['name'],
'contents' => $params['contents']
]);
}
}
$options['multipart'] = $paramsOptions;
if($auth && is_array($auth)){
$options['auth'] = $auth;
}
if(!is_null($header)){
$options['headers'] = array_merge($options['headers'],$header);
}
return $this->clientRequest('post', $uri, $options);
}
protected function clientRequest($requestType, $uri,$options)
{
$requestOptions = $this->getDefaultOptions();
......
......@@ -3,14 +3,13 @@
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
use Spatie\Permission\Models\Role;
class ThridApiPlatformSeeder extends Seeder
{
use \App\Support\Traits\Helpers;
protected $thirdapiplatform = [
/*[
[
'platform_name' => 'integle',
'platform_title' => 'integle',
'platform_url' => 'http://suppliers.integle.com',
......@@ -31,8 +30,8 @@ class ThridApiPlatformSeeder extends Seeder
'platform_type' => 'third',
'platform_status' => '1',
'platform_token' => '',
],*/
/*[
],
[
'platform_name' => 'bide',
'platform_title' => 'bide',
'platform_url' => 'http://220.248.71.110:9000',
......@@ -42,8 +41,8 @@ class ThridApiPlatformSeeder extends Seeder
'platform_type' => 'third',
'platform_status' => '1',
'platform_token' => '',
],*/
/*[
],
[
'platform_name' => 'bjs',
'platform_title' => 'bjs',
'platform_url' => 'http://220.248.71.110:9000',
......@@ -53,7 +52,7 @@ class ThridApiPlatformSeeder extends Seeder
'platform_type' => 'third',
'platform_status' => '1',
'platform_token' => '',
],*/
],
[
'platform_name' => 'zkh',
'platform_title' => '震坤行',
......@@ -89,7 +88,10 @@ class ThridApiPlatformSeeder extends Seeder
'username' => '790087059@qq.com',
'password' => 'YXH1992xb',
'auth' => 'dGVzdDEyMzpwYXNzNDU2',
'batchNums' => '500'
'batchNums' => '500',
'companyId' => '6789',
'adminUrl' => 'https://www.uploadcatalog.com',
'excelCreateLimit' => 100
]);
break;
case "bide" :
......@@ -121,7 +123,7 @@ class ThridApiPlatformSeeder extends Seeder
$platform['created_at'] = date('Y-m-d H:i:s',time());
$platform['updated_at'] = date('Y-m-d H:i:s',time());
$thirdApiPlatformRepo->updateOrCreate($platform);
$thirdApiPlatformRepo->updateOrCreate(['platform_name' => $platform['platform_name']],$platform);
}
DB::commit();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment