Skip to content
Toggle navigation
Projects
Groups
Snippets
Help
Письменов Дмитрий Иванович
/
yourroomads
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Settings
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit c08f8e30
authored
Jun 01, 2021
by
Vladislav
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
#20207 Доработка изменения РК
1 parent
e08d6e9e
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
17 additions
and
13 deletions
app/Service/Contract/APIRequest.php
app/Service/Requests/APIRequest.php
app/Service/Requests/Direct/AddCampaigns.php
app/Service/Requests/DirectRequest.php
tests/Unit/AddCampaignsTest.php
app/Service/Contract/APIRequest.php
View file @
c08f8e3
...
@@ -14,7 +14,6 @@ interface APIRequest{
...
@@ -14,7 +14,6 @@ interface APIRequest{
function
getToken
()
:
Tokens
;
function
getToken
()
:
Tokens
;
function
getApi
()
:
string
;
function
getApi
()
:
string
;
function
getCountObjects
()
:
int
;
function
slice
(
$objects
)
:
?
APIRequest
;
function
slice
(
$objects
)
:
?
APIRequest
;
function
call
(
$params
=
null
);
function
call
(
$params
=
null
);
...
...
app/Service/Requests/APIRequest.php
View file @
c08f8e3
...
@@ -73,11 +73,6 @@ class APIRequest implements \App\Service\Contract\APIRequest {
...
@@ -73,11 +73,6 @@ class APIRequest implements \App\Service\Contract\APIRequest {
return
$this
->
token
;
return
$this
->
token
;
}
}
function
getCountObjects
()
:
int
{
throw
new
Exception
(
'Я не знаю как считать кол-во объектов'
);
}
function
slice
(
$count
)
:
?
\App\Service\Contract\APIRequest
function
slice
(
$count
)
:
?
\App\Service\Contract\APIRequest
{
{
throw
new
Exception
(
'Я не знаю формата запрсов, чтобы его разбить'
);
throw
new
Exception
(
'Я не знаю формата запрсов, чтобы его разбить'
);
...
...
app/Service/Requests/Direct/AddCampaigns.php
View file @
c08f8e3
...
@@ -9,6 +9,7 @@ use App\Models\Variable;
...
@@ -9,6 +9,7 @@ use App\Models\Variable;
use
App\Service\Requests\DirectRequest
;
use
App\Service\Requests\DirectRequest
;
use
App\Service\StrReplaceByVariables
;
use
App\Service\StrReplaceByVariables
;
use
Carbon\Carbon
;
use
Carbon\Carbon
;
use
Illuminate\Database\Eloquent\Collection
;
use
Illuminate\Support\Facades\Log
;
use
Illuminate\Support\Facades\Log
;
class
AddCampaigns
extends
DirectRequest
class
AddCampaigns
extends
DirectRequest
...
@@ -16,6 +17,10 @@ class AddCampaigns extends DirectRequest
...
@@ -16,6 +17,10 @@ class AddCampaigns extends DirectRequest
CONST
MAX_COUNT
=
10
;
CONST
MAX_COUNT
=
10
;
protected
$timestamp
;
protected
$timestamp
;
/* @var Collection|DictionaryCampaign[] $dictionaryCampaigns */
protected
$dictionaryCampaigns
;
/* @var Collection|Variable[] $dictionaryCampaigns */
protected
$variables
;
public
function
call
(
$params
=
null
)
public
function
call
(
$params
=
null
)
{
{
...
@@ -40,7 +45,7 @@ class AddCampaigns extends DirectRequest
...
@@ -40,7 +45,7 @@ class AddCampaigns extends DirectRequest
continue
;
continue
;
}
}
DictionaryCampaign
::
where
(
'external_id'
,
$external_id
)
->
update
([
$this
->
dictionaryCampaigns
->
get
(
$key
)
->
update
([
'external_id'
=>
$external_id
,
'external_id'
=>
$external_id
,
'external_upload_at'
=>
Carbon
::
now
(),
'external_upload_at'
=>
Carbon
::
now
(),
]);
]);
...
@@ -50,13 +55,21 @@ class AddCampaigns extends DirectRequest
...
@@ -50,13 +55,21 @@ class AddCampaigns extends DirectRequest
}
}
}
}
public
function
putParams
(
$params
)
{
$this
->
dictionaryCampaigns
=
$params
[
'dictionaryCampaigns'
];
$this
->
variables
=
$params
[
'variables'
];
}
private
function
requestPrepare
(
$params
)
private
function
requestPrepare
(
$params
)
{
{
$this
->
setService
(
'Campaigns'
);
$this
->
setService
(
'Campaigns'
);
$this
->
setMethod
(
'add'
);
$this
->
setMethod
(
'add'
);
$this
->
putParams
(
$params
);
$this
->
setParams
([
$this
->
setParams
([
'Campaigns'
=>
$
params
[
'dictionaryCampaigns'
]
->
map
(
function
(
DictionaryCampaign
$dictionaryCampaign
)
{
'Campaigns'
=>
$
this
->
dictionaryCampaigns
->
map
(
function
(
DictionaryCampaign
$dictionaryCampaign
)
{
$list
=
Variable
::
getListVariablesByDictionaryCampaign
(
$dictionaryCampaign
);
$list
=
Variable
::
getListVariablesByDictionaryCampaign
(
$dictionaryCampaign
);
...
...
app/Service/Requests/DirectRequest.php
View file @
c08f8e3
...
@@ -20,11 +20,6 @@ class DirectRequest extends APIRequest {
...
@@ -20,11 +20,6 @@ class DirectRequest extends APIRequest {
$this
->
url
=
config
(
'api.yandex.url'
);
$this
->
url
=
config
(
'api.yandex.url'
);
}
}
function
getCountObjects
()
:
int
{
return
1
;
}
function
slice
(
$count
)
:
?
\App\Service\Contract\APIRequest
function
slice
(
$count
)
:
?
\App\Service\Contract\APIRequest
{
{
return
null
;
return
null
;
...
...
tests/Unit/AddCampaignsTest.php
View file @
c08f8e3
...
@@ -107,6 +107,8 @@ class AddCampaignsTest extends TestCase
...
@@ -107,6 +107,8 @@ class AddCampaignsTest extends TestCase
]
]
];
];
$this
->
request
->
putParams
(
$this
->
params
);
$this
->
request
->
handle
(
$data
);
$this
->
request
->
handle
(
$data
);
$this
->
dictionary
->
campaigns
->
first
()
->
pivot
->
refresh
();
$this
->
dictionary
->
campaigns
->
first
()
->
pivot
->
refresh
();
...
...
Write
Preview
Markdown
is supported
Attach a file
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to post a comment