Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
goods
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
bp
goods
Commits
d0399d86
Commit
d0399d86
authored
Aug 26, 2021
by
suntengda
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add 营销中心-活动列表
parent
74b64a29
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
92 additions
and
0 deletions
+92
-0
MarketingOnlineStatusValidate.php
...cation/library/Validate/MarketingOnlineStatusValidate.php
+5
-0
Marketing.php
application/models/marketing/mysql/Marketing.php
+6
-0
Marketing.php
application/modules/Marketing/controllers/Marketing.php
+21
-0
MarketingService.php
application/services/marketing/MarketingService.php
+60
-0
No files found.
application/library/Validate/MarketingOnlineStatusValidate.php
View file @
d0399d86
...
@@ -22,4 +22,9 @@ class MarketingOnlineStatusValidate extends BaseValidate
...
@@ -22,4 +22,9 @@ class MarketingOnlineStatusValidate extends BaseValidate
"marketing_type"
=>
"marketing_type 不能为空"
,
"marketing_type"
=>
"marketing_type 不能为空"
,
"online_status"
=>
"online_status 不能为空"
,
"online_status"
=>
"online_status 不能为空"
,
];
];
public
function
sceneYingxiao
()
{
return
$this
->
only
([
'marketing_id'
,
'online_status'
]);
}
}
}
\ No newline at end of file
application/models/marketing/mysql/Marketing.php
View file @
d0399d86
...
@@ -14,6 +14,8 @@ class Marketing extends MysqlBase
...
@@ -14,6 +14,8 @@ class Marketing extends MysqlBase
const
MARKETING_TYPE_TUANGOU
=
2
;
const
MARKETING_TYPE_TUANGOU
=
2
;
const
MARKETING_TYPE_MIAOSHA
=
3
;
const
MARKETING_TYPE_MIAOSHA
=
3
;
const
MARKETING_TYPE_PINDAN
=
4
;
const
MARKETING_TYPE_PINDAN
=
4
;
const
MARKETING_TYPE_LIEBIAN
=
5
;
const
MARKETING_TYPE_TUANZHANG
=
6
;
const
ONLINE_STATUS_QIDONG
=
1
;
const
ONLINE_STATUS_QIDONG
=
1
;
const
ONLINE_STATUS_GUANBI
=
2
;
const
ONLINE_STATUS_GUANBI
=
2
;
...
@@ -125,6 +127,10 @@ class Marketing extends MysqlBase
...
@@ -125,6 +127,10 @@ class Marketing extends MysqlBase
$data
[
'online_status'
]
=
$where
[
'online_status'
];
$data
[
'online_status'
]
=
$where
[
'online_status'
];
}
}
if
(
!
empty
(
$where
[
'marketing_type'
]))
{
$data
[
'marketing_type'
]
=
$where
[
'marketing_type'
];
}
return
$data
;
return
$data
;
}
}
}
}
application/modules/Marketing/controllers/Marketing.php
View file @
d0399d86
...
@@ -155,4 +155,25 @@ class MarketingController extends Base
...
@@ -155,4 +155,25 @@ class MarketingController extends Base
$this
->
success
();
$this
->
success
();
}
}
/**
* 切换活动状态
* @throws \App\Exception\custom\ParamException
*/
public
function
toogle_yingxiao_online_statusAction
()
{
(
new
MarketingOnlineStatusValidate
())
->
scene
(
'yingxiao'
)
->
validate
();
$res
=
MarketingService
::
toogleOnlineStatus
(
$this
->
params
[
'marketing_id'
],
$this
->
params
[
'online_status'
]);
$this
->
success
([
'result'
=>
$res
]);
}
/**
* 营销中心-活动列表
* @throws Exception
*/
public
function
yingxiao_listAction
()
{
$lists
=
MarketingService
::
yingxiaoList
(
$this
->
params
);
$this
->
success
([
'result'
=>
$lists
]);
}
}
}
\ No newline at end of file
application/services/marketing/MarketingService.php
View file @
d0399d86
...
@@ -4,6 +4,7 @@
...
@@ -4,6 +4,7 @@
namespace
App\Services\marketing
;
namespace
App\Services\marketing
;
use
Api\PhpServices\Ksy\Ks3Api
;
use
Api\PhpServices\Ksy\Ks3Api
;
use
Api\PhpUtils\Http\Request
;
use
App\Models\goods\mysql\Ota
;
use
App\Models\goods\mysql\Ota
;
use
App\Models\goods\mysql\PindanGoodsSku
;
use
App\Models\goods\mysql\PindanGoodsSku
;
use
App\Models\marketing\mysql\Marketing
;
use
App\Models\marketing\mysql\Marketing
;
...
@@ -145,6 +146,47 @@ class MarketingService
...
@@ -145,6 +146,47 @@ class MarketingService
}
}
}
}
/**
* 营销中心-活动列表
* @param $params
* @return array
*/
public
static
function
yingxiaoList
(
$params
)
{
$where
[
"marketing_type"
]
=
[
Marketing
::
MARKETING_TYPE_LIEBIAN
,
Marketing
::
MARKETING_TYPE_TUANZHANG
];
$where
[
'ORDER'
]
=
[
"create_time"
=>
"DESC"
];
$lists
=
Marketing
::
getRecords
(
$where
);
if
(
$lists
&&
is_array
(
$lists
))
{
$capitalPoolIds
=
array_column
(
$lists
,
'capital_pool_id'
);
//获取资金池列表信息
$url
=
config
(
'interface'
,
'coupon.capitalpool.fetch_map_capitalpool'
);
$capitalPoolList
=
(
new
Request
())
->
get
(
$url
,
[
"capital_pool_ids"
=>
$capitalPoolIds
]);
$capitalPoolList
=
$capitalPoolList
[
'response'
][
'result'
]
?:
[];
$poolTotal
=
$poolUsed
=
$poolLock
=
0
;
foreach
(
$lists
as
&
$val
)
{
if
(
$capitalPoolList
[
$val
[
'capital_pool_id'
]])
{
$val
[
'capital_pool'
]
=
$capitalPoolList
[
$val
[
'capital_pool_id'
]];
$poolTotal
+=
$val
[
'capital_pool'
][
'capital_pool_total'
];
$poolUsed
+=
$val
[
'capital_pool'
][
'capital_pool_used'
];
$poolLock
+=
$val
[
'capital_pool'
][
'capital_pool_lock'
];
}
else
{
$val
[
'capital_pool'
]
=
[];
}
$val
[
'online_status_desc'
]
=
Marketing
::
$onlineStatusDesc
[
$val
[
'online_status'
]];
}
unset
(
$val
);
}
$poolbalance
=
$poolTotal
-
$poolUsed
-
$poolLock
;
$poolAnalysis
=
[
'total'
=>
$poolTotal
,
'used'
=>
$poolUsed
,
'lock'
=>
$poolLock
,
'balance'
=>
$poolbalance
];
return
[
'anlysis'
=>
$poolAnalysis
,
'list'
=>
$lists
];
}
/**
/**
* 分销活动列表
* 分销活动列表
* @param $params
* @param $params
...
@@ -830,6 +872,24 @@ class MarketingService
...
@@ -830,6 +872,24 @@ class MarketingService
Marketing
::
updateRecord
(
$marketingParams
,
[
"marketing_id"
=>
$marketingId
,
"marketing_type"
=>
$marketingType
]);
Marketing
::
updateRecord
(
$marketingParams
,
[
"marketing_id"
=>
$marketingId
,
"marketing_type"
=>
$marketingType
]);
}
}
/**
* 切换活动状态
* @param $marketingId
* @param $onlineStatus
* @return \Api\PhpUtils\Mysql\MysqlBase
*/
public
static
function
toogleOnlineStatus
(
$marketingId
,
$onlineStatus
)
{
if
(
!
in_array
(
$onlineStatus
,
array_keys
(
Marketing
::
$onlineStatusDesc
)))
{
return
0
;
}
$data
=
[
'online_status'
=>
$onlineStatus
,
];
return
Marketing
::
updateRecord
(
$data
,
[
"marketing_id"
=>
$marketingId
]);
}
/**
/**
* 分销活动详情
* 分销活动详情
* @param $params
* @param $params
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
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 comment