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
0e98cead
Commit
0e98cead
authored
Aug 27, 2021
by
jianghaiming
Browse files
Options
Browse Files
Download
Plain Diff
update:修改冲突
parents
99a712e2
356401b9
Changes
25
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
25 changed files
with
1547 additions
and
15 deletions
+1547
-15
BaseException.php
application/exception/BaseException.php
+17
-10
MarketingException.php
application/exception/custom/MarketingException.php
+23
-3
ColonelAddPointValidate.php
application/library/Validate/ColonelAddPointValidate.php
+39
-0
ColonelApplyValidate.php
application/library/Validate/ColonelApplyValidate.php
+23
-0
ColonelAuditValidate.php
application/library/Validate/ColonelAuditValidate.php
+16
-0
ColonelCenterValidate.php
application/library/Validate/ColonelCenterValidate.php
+14
-0
ColonelConfigValidate.php
application/library/Validate/ColonelConfigValidate.php
+27
-0
MarketingOnlineStatusValidate.php
...cation/library/Validate/MarketingOnlineStatusValidate.php
+5
-0
ColonelDistributorColonel.php
...tion/models/marketing/mysql/ColonelDistributorColonel.php
+64
-0
ColonelDistributorColonelApply.php
...models/marketing/mysql/ColonelDistributorColonelApply.php
+66
-0
ColonelDistributorConfig.php
...ation/models/marketing/mysql/ColonelDistributorConfig.php
+53
-0
ColonelDistributorInviteOrder.php
.../models/marketing/mysql/ColonelDistributorInviteOrder.php
+54
-0
ColonelDistributorInviteOrderNum.php
...dels/marketing/mysql/ColonelDistributorInviteOrderNum.php
+51
-0
ColonelDistributorPayInfo.php
...tion/models/marketing/mysql/ColonelDistributorPayInfo.php
+59
-0
Marketing.php
application/models/marketing/mysql/Marketing.php
+6
-0
TakePlace.php
application/models/marketing/mysql/TakePlace.php
+11
-0
Colonel.php
application/modules/Marketing/controllers/Colonel.php
+230
-0
Marketing.php
application/modules/Marketing/controllers/Marketing.php
+21
-0
ColonelService.php
application/services/marketing/ColonelService.php
+298
-0
MarketingService.php
application/services/marketing/MarketingService.php
+60
-0
PindanActivityColonelConfigService.php
...services/marketing/PindanActivityColonelConfigService.php
+124
-0
PindanActivityInviteOrderService.php
...n/services/marketing/PindanActivityInviteOrderService.php
+278
-0
TakePlaceService.php
application/services/marketing/TakePlaceService.php
+3
-2
UserService.php
application/services/user/UserService.php
+4
-0
php.ini
deploy/start_env/ini/php.ini
+1
-0
No files found.
application/exception/BaseException.php
View file @
0e98cead
...
@@ -22,27 +22,34 @@ class BaseException extends \Exception
...
@@ -22,27 +22,34 @@ class BaseException extends \Exception
*/
*/
public
function
__construct
(
$params
=
[])
public
function
__construct
(
$params
=
[])
{
{
if
(
!
is_arra
y
(
$params
))
{
if
(
empt
y
(
$params
))
{
return
;
return
;
}
}
if
(
!
is_array
(
$params
))
{
return
$this
->
setCusMsg
(
$params
);
}
$this
->
code
=
$params
[
'code'
]
??
Registry
::
get
(
'config'
)
->
exception
->
user
->
code
;
$this
->
code
=
$params
[
'code'
]
??
Registry
::
get
(
'config'
)
->
exception
->
user
->
code
;
$this
->
msg
=
$params
[
'msg'
]
??
Registry
::
get
(
'config'
)
->
exception
->
user
->
msg
;
$this
->
msg
=
$params
[
'msg'
]
??
Registry
::
get
(
'config'
)
->
exception
->
user
->
msg
;
if
(
isset
(
$params
[
'cus'
])
&&
$this
->
cus
&&
isset
(
$this
->
cus
[
intval
(
$params
[
'cus'
])])
&&
$this
->
base_code
)
{
if
(
isset
(
$params
[
'cus'
])
&&
$this
->
cus
&&
isset
(
$this
->
cus
[
intval
(
$params
[
'cus'
])])
&&
$this
->
base_code
)
{
return
$this
->
setCusMsg
(
$params
[
'cus'
]);
}
}
public
function
setCusMsg
(
$cus
)
{
//每个服务都有自己的codePrefix
//每个服务都有自己的codePrefix
$appid
=
\Yaf\Application
::
app
()
->
getConfig
()
->
get
(
"appid"
);
$appid
=
\Yaf\Application
::
app
()
->
getConfig
()
->
get
(
"appid"
);
$codePrefix
=
\Yaconf
::
get
(
'bizcode.prefix.'
.
$appid
);
$codePrefix
=
\Yaconf
::
get
(
'bizcode.prefix.'
.
$appid
);
$codePrefix
=
intval
(
$codePrefix
);
$codePrefix
=
intval
(
$codePrefix
);
$cus_code
=
intval
(
$params
[
'cus'
]
);
$cus_code
=
intval
(
$cus
);
$base_code
=
intval
(
$this
->
base_code
);
$base_code
=
intval
(
$this
->
base_code
);
$this
->
code
=
$codePrefix
+
$base_code
+
$cus_code
;
$this
->
code
=
$codePrefix
+
$base_code
+
$cus_code
;
$this
->
msg
=
isset
(
$params
[
'data'
])
?
vsprintf
(
$this
->
cus
[
$cus_code
],
$params
[
'data'
])
:
$this
->
cus
[
$cus_code
];
$this
->
msg
=
isset
(
$params
[
'data'
])
?
vsprintf
(
$this
->
cus
[
$cus_code
],
$params
[
'data'
])
:
$this
->
cus
[
$cus_code
];
}
}
}
public
function
__get
(
$name
)
:
bool
public
function
__get
(
$name
)
:
bool
{
{
...
...
application/exception/custom/MarketingException.php
View file @
0e98cead
...
@@ -3,7 +3,6 @@
...
@@ -3,7 +3,6 @@
namespace
App\Exception\custom
;
namespace
App\Exception\custom
;
use
App\Exception\BaseException
;
use
App\Exception\BaseException
;
class
MarketingException
extends
BaseException
class
MarketingException
extends
BaseException
...
@@ -13,6 +12,17 @@ class MarketingException extends BaseException
...
@@ -13,6 +12,17 @@ class MarketingException extends BaseException
const
LIFE_ACCOUNT_NO_EXIST
=
16
;
const
LIFE_ACCOUNT_NO_EXIST
=
16
;
const
RELATION_ALREADY_EXIST
=
17
;
const
RELATION_ALREADY_EXIST
=
17
;
const
TAKE_PLACE_NOT_EXIST
=
20
;
const
TAKE_PLACE_NOT_EXIST
=
20
;
const
COLONEL_APPLY_EXIST
=
23
;
const
COLONEL_APPLY_FAILED
=
24
;
const
COLONEL_CONFIG_NULL
=
25
;
const
COLONEL_LEVEL_SIX
=
26
;
const
COLONEL_AUDIT_STATUS
=
27
;
const
COLONEL_AUDIT_STATUS_FAILED
=
28
;
const
COMMIT_ERROR
=
29
;
const
COLONEL_TAKE_PLACE_EXIST
=
30
;
const
COLONEL_TAKE_PLACE_PARAMS
=
31
;
const
COLONEL_TAKE_PLACE_FAILED
=
32
;
protected
$cus
=
[
protected
$cus
=
[
0
=>
'活动名称不能为空'
,
0
=>
'活动名称不能为空'
,
...
@@ -38,6 +48,16 @@ class MarketingException extends BaseException
...
@@ -38,6 +48,16 @@ class MarketingException extends BaseException
self
::
TAKE_PLACE_NOT_EXIST
=>
'自提点不存在'
,
self
::
TAKE_PLACE_NOT_EXIST
=>
'自提点不存在'
,
21
=>
"活动开始时间不能大于或者等于结束时间"
,
21
=>
"活动开始时间不能大于或者等于结束时间"
,
22
=>
"自提点不能为空"
,
22
=>
"自提点不能为空"
,
23
=>
'分润金额+手续费不能大于售价金额'
,
self
::
COLONEL_APPLY_EXIST
=>
'当前用户已提交团长申请'
,
self
::
COLONEL_APPLY_FAILED
=>
'团长申请失败'
,
self
::
COLONEL_CONFIG_NULL
=>
"团长分销配置内容不能为空"
,
self
::
COLONEL_LEVEL_SIX
=>
"档位最多设定6档"
,
self
::
COLONEL_AUDIT_STATUS
=>
'团长审核状态错误'
,
self
::
COLONEL_AUDIT_STATUS_FAILED
=>
'团长审核失败'
,
self
::
COMMIT_ERROR
=>
'事务commit失败'
,
self
::
COLONEL_TAKE_PLACE_EXIST
=>
'自提点名称已存在'
,
self
::
COLONEL_TAKE_PLACE_PARAMS
=>
'自提点信息不存在'
,
self
::
COLONEL_TAKE_PLACE_FAILED
=>
'自提点添加失败'
,
33
=>
'分润金额+手续费不能大于售价金额'
,
];
];
}
}
application/library/Validate/ColonelAddPointValidate.php
0 → 100644
View file @
0e98cead
<?php
/**
* Created by PhpStorm.
* User: pengfei@yidian-inc.com
* Date: 2021/8/24 1:32 下午
*/
namespace
Validate
;
class
ColonelAddPointValidate
extends
BaseValidate
{
protected
$rule
=
[
'colonel_apply_id'
=>
'require'
,
'longitude'
=>
'require'
,
'latitude'
=>
'require'
,
'location'
=>
'require'
,
'address'
=>
'require'
,
'province'
=>
'require'
,
'city'
=>
'require'
,
'area'
=>
'require'
,
'contact_name'
=>
'require'
,
'phone'
=>
'isMobile'
,
'take_place_name'
=>
'require'
,
];
protected
$message
=
[
'colonel_apply_id'
=>
'申请id不能为空'
,
'longitude'
=>
'位置经度不能为空'
,
'latitude'
=>
'位置纬度不能为空'
,
'location'
=>
'自提点地址不能为空'
,
'address'
=>
'详细地址不能为空'
,
'province'
=>
'省份不能为空'
,
'city'
=>
'城市不能为空'
,
'area'
=>
'地区不能为空'
,
'contact_name'
=>
'联系人不能为空'
,
'phone'
=>
'请输入正确的手机号'
,
'take_place_name'
=>
'自提点名称不能为空'
,
];
}
application/library/Validate/ColonelApplyValidate.php
0 → 100644
View file @
0e98cead
<?php
/**
* Created by PhpStorm.
* User: pengfei@yidian-inc.com
* Date: 2021/8/20 3:11 下午
*/
namespace
Validate
;
class
ColonelApplyValidate
extends
BaseValidate
{
protected
$rule
=
[
'user_id'
=>
'require'
,
'phone'
=>
'isMobile'
,
'contact_name'
=>
'require'
,
];
protected
$message
=
[
'user_id'
=>
'用户id不能为空'
,
'phone'
=>
'请输入正确的手机号'
,
'contact_name'
=>
'联系人不能为空'
];
}
application/library/Validate/ColonelAuditValidate.php
0 → 100644
View file @
0e98cead
<?php
namespace
Validate
;
class
ColonelAuditValidate
extends
BaseValidate
{
protected
$rule
=
[
'colonel_apply_id'
=>
'require'
,
'audit_status'
=>
'require'
,
];
protected
$message
=
[
"colonel_apply_id"
=>
"申请id不能为空"
,
"audit_status"
=>
"审核状态不能为空"
,
];
}
application/library/Validate/ColonelCenterValidate.php
0 → 100644
View file @
0e98cead
<?php
namespace
Validate
;
class
ColonelCenterValidate
extends
BaseValidate
{
protected
$rule
=
[
'user_id'
=>
'require'
,
];
protected
$message
=
[
'user_id'
=>
'user_id 参数不能为空'
,
];
}
\ No newline at end of file
application/library/Validate/ColonelConfigValidate.php
0 → 100644
View file @
0e98cead
<?php
namespace
Validate
;
class
ColonelConfigValidate
extends
BaseValidate
{
protected
$rule
=
[
'date'
=>
'require'
,
'config'
=>
'require'
,
];
protected
$message
=
[
'date'
=>
'date 参数不能为空'
,
'config'
=>
'config 参数不能为空'
,
'marketing_id'
=>
'marketing_id 参数不能为空'
,
];
public
function
sceneDate
()
{
return
$this
->
only
([
"date"
])
->
append
(
"date"
,
"require"
);
}
public
function
sceneAdd
()
{
return
$this
->
only
([
"date"
,
"config"
,
"marketing_id"
])
->
append
(
"marketing_id"
,
"require"
);
}
}
\ No newline at end of file
application/library/Validate/MarketingOnlineStatusValidate.php
View file @
0e98cead
...
@@ -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/ColonelDistributorColonel.php
0 → 100644
View file @
0e98cead
<?php
/**
* Created by PhpStorm.
* User: pengfei@yidian-inc.com
* Date: 2021/8/23 1:46 下午
*/
namespace
App\Models\marketing\mysql
;
use
Api\PhpUtils\Mysql\MysqlBase
;
class
ColonelDistributorColonel
extends
MysqlBase
{
const
TABLE_NAME
=
'colonel_distributor_colonel'
;
const
CONFIG_INDEX
=
'marketing'
;
const
PRIMARY_KEY
=
'colonel_id'
;
const
COLONEL_SOURCE_APPLY
=
1
;
//用户申请
const
COLONEL_SOURCE_ADMIN
=
2
;
//运营添加
const
DEFAULT_COLUMN
=
[
'colonel_id'
,
'user_id'
,
'take_place_id'
,
'phone'
,
'contact_name'
,
'colonel_source'
];
public
static
function
getRecord
(
array
$where
,
$column
=
'*'
)
{
return
self
::
get
(
$column
,
$where
);
}
public
static
function
getRecords
(
array
$where
,
$column
=
'*'
)
{
return
self
::
select
(
$column
,
$where
);
}
public
static
function
updateRecord
(
array
$columns
,
array
$where
)
{
return
self
::
update
(
$columns
,
$where
);
}
public
static
function
insertRecord
(
array
$column
)
:
int
{
$id
=
self
::
insert
(
$column
);
return
intval
(
$id
);
}
public
static
function
getPages
(
array
$where
=
[],
$column
=
'*'
,
int
$page
,
int
$pageSize
,
array
$orderBy
=
[
'colonel_apply_id'
=>
'DESC'
])
{
if
(
empty
(
$column
))
{
$column
=
self
::
DEFAULT_COLUMN
;
}
$data
=
$where
;
$count
=
self
::
count
([],
$where
);
if
(
empty
(
$count
))
{
return
[
'list'
=>
[],
'count'
=>
0
];
}
if
(
!
empty
(
$page
)
&&
!
empty
(
$pageSize
))
{
$offset
=
(
$page
-
1
)
*
$pageSize
;
$data
[
'LIMIT'
]
=
[
$offset
,
$pageSize
];
}
if
(
!
empty
(
$orderBy
))
{
$data
[
'ORDER'
]
=
$orderBy
;
}
$result
=
self
::
select
(
$column
,
$data
);
return
[
'result'
=>
$result
,
'count'
=>
$count
];
}
}
application/models/marketing/mysql/ColonelDistributorColonelApply.php
0 → 100644
View file @
0e98cead
<?php
/**
* Created by PhpStorm.
* User: pengfei@yidian-inc.com
* Date: 2021/8/20 2:38 下午
*/
namespace
App\Models\marketing\mysql
;
use
Api\PhpUtils\Mysql\MysqlBase
;
class
ColonelDistributorColonelApply
extends
MysqlBase
{
const
TABLE_NAME
=
'colonel_distributor_colonel_apply'
;
const
CONFIG_INDEX
=
'marketing'
;
const
PRIMARY_KEY
=
'colonel_apply_id'
;
const
STATUS_AUDIT
=
0
;
//待审核
const
STATUS_PASS
=
1
;
//审核通过
const
STATUS_REJECT
=
2
;
//审核驳回
const
DEFAULT_COLUMN
=
[
'colonel_apply_id'
,
'audit_status'
,
'user_id'
,
'phone'
,
'contact_name'
,
'take_place_name'
,
'province'
,
'city'
,
'area'
,
'location'
];
public
static
function
insertRecord
(
array
$column
)
:
int
{
$id
=
self
::
insert
(
$column
);
return
intval
(
$id
);
}
public
static
function
getRecord
(
array
$where
,
$column
=
'*'
)
{
return
self
::
get
(
$column
,
$where
);
}
public
static
function
updateRecord
(
array
$columns
,
array
$where
)
{
return
self
::
update
(
$columns
,
$where
);
}
public
static
function
getPages
(
array
$where
=
[],
$column
=
'*'
,
int
$page
,
int
$pageSize
,
array
$orderBy
=
[
'colonel_apply_id'
=>
'DESC'
])
{
if
(
empty
(
$column
))
{
$column
=
self
::
DEFAULT_COLUMN
;
}
$data
=
$where
;
$count
=
self
::
count
([],
$where
);
if
(
empty
(
$count
))
{
return
[
'list'
=>
[],
'count'
=>
0
];
}
if
(
!
empty
(
$page
)
&&
!
empty
(
$pageSize
))
{
$offset
=
(
$page
-
1
)
*
$pageSize
;
$data
[
'LIMIT'
]
=
[
$offset
,
$pageSize
];
}
if
(
!
empty
(
$orderBy
))
{
$data
[
'ORDER'
]
=
$orderBy
;
}
$result
=
self
::
select
(
$column
,
$data
);
return
[
'result'
=>
$result
,
'count'
=>
$count
];
}
public
static
function
existUser
(
string
$userId
)
:
bool
{
$exist
=
self
::
getRecord
([
'user_id'
=>
$userId
],
[
'colonel_apply_id'
]);
return
!
empty
(
$exist
);
}
}
application/models/marketing/mysql/ColonelDistributorConfig.php
0 → 100644
View file @
0e98cead
<?php
namespace
App\Models\marketing\mysql
;
use
Api\PhpUtils\Mysql\MysqlBase
;
class
ColonelDistributorConfig
extends
MysqlBase
{
const
TABLE_NAME
=
'colonel_distributor_colonel_config'
;
const
CONFIG_INDEX
=
'marketing'
;
const
PRIMARY_KEY
=
'colonel_config_id'
;
const
TYPE_COLONEL
=
1
;
//团长分销活动
public
static
function
getRecord
(
$where
,
$columns
=
[],
$options
=
[])
{
if
(
empty
(
$columns
))
{
$columns
=
'*'
;
}
return
self
::
get
(
$columns
,
$where
,
$options
);
}
public
static
function
getRecordMaster
(
$where
,
$columns
=
[],
$options
=
[])
{
if
(
empty
(
$columns
))
{
$columns
=
'*'
;
}
return
self
::
selectMaster
(
$columns
,
$where
,
$options
);
}
public
static
function
insertRecord
(
$columns
,
$options
=
[])
{
return
self
::
insert
(
$columns
,
$options
);
}
public
static
function
updateRecord
(
$columns
,
$where
)
{
return
self
::
update
(
$columns
,
$where
);
}
public
static
function
save
(
$data
,
$where
=
[],
$options
=
[])
{
if
(
empty
(
$where
))
{
return
self
::
insert
(
$data
,
$options
);
}
return
self
::
update
(
$data
,
$where
);
}
public
static
function
deleteRecord
(
$where
)
{
return
self
::
delete
(
$where
);
}
}
\ No newline at end of file
application/models/marketing/mysql/ColonelDistributorInviteOrder.php
0 → 100644
View file @
0e98cead
<?php
namespace
App\Models\marketing\mysql
;
use
Api\PhpUtils\Mysql\MysqlBase
;
class
ColonelDistributorInviteOrder
extends
MysqlBase
{
const
TABLE_NAME
=
'colonel_distributor_invite_order'
;
const
CONFIG_INDEX
=
'marketing'
;
const
PRIMARY_KEY
=
'invite_order_id'
;
const
IS_REFUND_NO
=
0
;
//未退款
const
IS_REFUND_YES
=
1
;
//已退款
public
static
function
getRecord
(
$where
,
$columns
=
[],
$options
=
[])
{
if
(
empty
(
$columns
))
{
$columns
=
'*'
;
}
return
self
::
get
(
$columns
,
$where
,
$options
);
}
public
static
function
getRecordMaster
(
$where
,
$columns
=
[],
$options
=
[])
{
if
(
empty
(
$columns
))
{
$columns
=
'*'
;
}
return
self
::
selectMaster
(
$columns
,
$where
,
$options
);
}
public
static
function
insertRecord
(
$columns
,
$options
=
[])
{
return
self
::
insert
(
$columns
,
$options
);
}
public
static
function
updateRecord
(
$columns
,
$where
)
{
return
self
::
update
(
$columns
,
$where
);
}
public
static
function
save
(
$data
,
$where
=
[],
$options
=
[])
{
if
(
empty
(
$where
))
{
return
self
::
insert
(
$data
,
$options
);
}
return
self
::
update
(
$data
,
$where
);
}
public
static
function
deleteRecord
(
$where
)
{
return
self
::
delete
(
$where
);
}
}
\ No newline at end of file
application/models/marketing/mysql/ColonelDistributorInviteOrderNum.php
0 → 100644
View file @
0e98cead
<?php
namespace
App\Models\marketing\mysql
;
use
Api\PhpUtils\Mysql\MysqlBase
;
class
ColonelDistributorInviteOrderNum
extends
MysqlBase
{
const
TABLE_NAME
=
'colonel_distributor_invite_order_num'
;
const
CONFIG_INDEX
=
'marketing'
;
const
PRIMARY_KEY
=
'invite_order_num_id'
;
public
static
function
getRecord
(
$where
,
$columns
=
[],
$options
=
[])
{
if
(
empty
(
$columns
))
{
$columns
=
'*'
;
}
return
self
::
get
(
$columns
,
$where
,
$options
);
}
public
static
function
getRecordMaster
(
$where
,
$columns
=
[],
$options
=
[])
{
if
(
empty
(
$columns
))
{
$columns
=
'*'
;
}
return
self
::
selectMaster
(
$columns
,
$where
,
$options
);
}
public
static
function
insertRecord
(
$columns
,
$options
=
[])
{
return
self
::
insert
(
$columns
,
$options
);
}
public
static
function
updateRecord
(
$columns
,
$where
)
{
return
self
::
update
(
$columns
,
$where
);
}
public
static
function
save
(
$data
,
$where
=
[],
$options
=
[])
{
if
(
empty
(
$where
))
{
return
self
::
insert
(
$data
,
$options
);
}
return
self
::
update
(
$data
,
$where
);
}
public
static
function
deleteRecord
(
$where
)
{
return
self
::
delete
(
$where
);
}
}
\ No newline at end of file
application/models/marketing/mysql/ColonelDistributorPayInfo.php
0 → 100644
View file @
0e98cead
<?php
namespace
App\Models\marketing\mysql
;
use
Api\PhpUtils\Mysql\MysqlBase
;
class
ColonelDistributorPayInfo
extends
MysqlBase
{
const
TABLE_NAME
=
'colonel_distributor_pay_info'
;
const
CONFIG_INDEX
=
'marketing'
;
const
PRIMARY_KEY
=
'colonel_distributor_pay_info_id'
;
const
TYPE_NEW_USER
=
1
;
const
TYPE_FINISH_TARGET
=
2
;
public
static
$typeDesc
=
[
self
::
TYPE_NEW_USER
=>
"邀请新用户"
,
self
::
TYPE_FINISH_TARGET
=>
"完成目标单数"
,
];
public
static
function
getRecord
(
$where
,
$columns
=
[],
$options
=
[])
{
if
(
empty
(
$columns
))
{
$columns
=
'*'
;
}
return
self
::
get
(
$columns
,
$where
,
$options
);
}
public
static
function
getRecordMaster
(
$where
,
$columns
=
[],
$options
=
[])
{
if
(
empty
(
$columns
))
{
$columns
=
'*'
;
}
return
self
::
selectMaster
(
$columns
,
$where
,
$options
);
}
public
static
function
insertRecord
(
$columns
,
$options
=
[])
{
return
self
::
insert
(
$columns
,
$options
);
}
public
static
function
updateRecord
(
$columns
,
$where
)
{
return
self
::
update
(
$columns
,
$where
);
}
public
static
function
save
(
$data
,
$where
=
[],
$options
=
[])
{
if
(
empty
(
$where
))
{
return
self
::
insert
(
$data
,
$options
);
}
return
self
::
update
(
$data
,
$where
);
}
public
static
function
deleteRecord
(
$where
)
{
return
self
::
delete
(
$where
);
}
}
\ No newline at end of file
application/models/marketing/mysql/Marketing.php
View file @
0e98cead
...
@@ -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/models/marketing/mysql/TakePlace.php
View file @
0e98cead
...
@@ -49,4 +49,15 @@ class TakePlace extends MysqlBase
...
@@ -49,4 +49,15 @@ class TakePlace extends MysqlBase
return
$res
;
return
$res
;
}
}
public
static
function
getRecord
(
array
$where
,
$column
=
'*'
)
{
return
self
::
get
(
$column
,
$where
);
}
public
static
function
existTakePlaceName
(
string
$takePlaceName
)
:
bool
{
$exist
=
self
::
getRecord
([
'take_place_name'
=>
$takePlaceName
],
[
'take_place_id'
]);
return
!
empty
(
$exist
);
}
}
}
application/modules/Marketing/controllers/Colonel.php
0 → 100644
View file @
0e98cead
<?php
/**
* Created by PhpStorm.
* User: pengfei@yidian-inc.com
* Date: 2021/8/20 2:06 下午
*/
use
App\Base\Base
;
use
App\Services\marketing\ColonelService
;
use
\Validate\ColonelApplyValidate
;
use
\Validate\ColonelConfigValidate
;
use
\Validate\ColonelAuditValidate
;
use
\Validate\ColonelCenterValidate
;
use
\Validate\ColonelAddPointValidate
;
use
\App\Services\marketing\PindanActivityColonelConfigService
;
use
\App\Services\marketing\PindanActivityInviteOrderService
;
use
\App\Services\user\UserService
;
class
ColonelController
extends
Base
{
/**
* Notes: 申请成为团长
* User: pengfei@yidian-inc.com
* Date: 2021/8/20 3:21 下午
* @throws \App\Exception\custom\MarketingException
* @throws \App\Exception\custom\ParamException
*/
public
function
applyAction
()
{
$params
=
$this
->
params
;
(
new
ColonelApplyValidate
())
->
validate
();
$applyId
=
ColonelService
::
apply
(
$params
);
return
$this
->
success
([
'result'
=>
[
'apply_id'
=>
$applyId
]]);
}
/**
* Notes: 是否已申请
* User: pengfei@yidian-inc.com
* Date: 2021/8/25 9:56 上午
* @throws \App\Exception\custom\ParamException
*/
public
function
is_applyAction
()
{
$params
=
$this
->
params
;
(
new
ColonelCenterValidate
())
->
validate
();
$applyInfo
=
ColonelService
::
isApply
(
$params
[
'user_id'
]);
return
$this
->
success
([
'result'
=>
$applyInfo
]);
}
/**
* 编辑团长分销配置
* @throws \App\Exception\custom\MarketingException
* @throws \App\Exception\custom\ParamException
*/
public
function
add_configAction
()
{
(
new
ColonelConfigValidate
())
->
scene
(
'add'
)
->
validate
();
$params
=
$this
->
params
;
PindanActivityColonelConfigService
::
editColonelConfig
(
$params
);
return
$this
->
success
();
}
/**
* 查看团长分销配置
* @throws \App\Exception\custom\ParamException
*/
public
function
colonel_configAction
()
{
(
new
ColonelConfigValidate
())
->
scene
(
"date"
)
->
validate
();
$params
=
$this
->
params
;
$data
=
PindanActivityColonelConfigService
::
colonelConfig
(
$params
);
return
$this
->
success
([
"result"
=>
$data
]);
}
/**
* Notes: 管理后台 - 申请团长审核列表
* User: pengfei@yidian-inc.com
* Date: 2021/8/23 2:17 下午
*/
public
function
manage_colonel_apply_listAction
()
{
$params
=
$this
->
params
;
$manageList
=
ColonelService
::
getManageApplyList
(
$params
);
return
$this
->
success
(
$manageList
);
}
/**
* Notes: 管理后台 - 团长审核列表
* User: pengfei@yidian-inc.com
* Date: 2021/8/24 3:09 下午
*/
public
function
manage_colonel_listAction
()
{
$params
=
$this
->
params
;
$manageList
=
ColonelService
::
getManageList
(
$params
);
return
$this
->
success
(
$manageList
);
}
/**
* Notes: 管理后台 - 申请团长审核
* User: pengfei@yidian-inc.com
* Date: 2021/8/23 2:16 下午
* @throws \App\Exception\custom\MarketingException
*/
public
function
manage_auditAction
()
{
$params
=
$this
->
params
;
(
new
ColonelAuditValidate
())
->
validate
();
ColonelService
::
handleManageAudit
(
$params
[
'colonel_apply_id'
],
$params
[
'audit_status'
]);
return
$this
->
success
();
}
/**
* Notes: 管理后台 - 获取自提点信息
* User: pengfei@yidian-inc.com
* Date: 2021/8/24 2:43 下午
*/
public
function
manage_show_apply_pointAction
()
{
$params
=
$this
->
params
;
$colonelApply
=
ColonelService
::
getTakePlaceInfo
(
$params
[
'colonel_apply_id'
]);
return
$this
->
success
([
'result'
=>
$colonelApply
]);
}
/**
* Notes: 管理后台 - 添加自提点信息
* User: pengfei@yidian-inc.com
* Date: 2021/8/25 2:52 下午
* @throws \App\Exception\custom\MarketingException
* @throws \App\Exception\custom\ParamException
*/
public
function
manage_add_apply_pointAction
()
{
$params
=
$this
->
params
;
(
new
ColonelAddPointValidate
())
->
validate
();
$takePlaceId
=
ColonelService
::
handleAddTaskPlace
(
$params
);
return
$this
->
success
([
'result'
=>
[
'take_place_id'
=>
$takePlaceId
]]);
}
/**
* 团长分销下单处理统计数据逻辑
* @throws \App\Exception\custom\MarketingException
*/
public
function
place_order_process_logicAction
()
{
$params
=
$this
->
params
;
$data
=
PindanActivityInviteOrderService
::
placeOrder
(
$params
);
return
$this
->
success
([
"result"
=>
$data
]);
}
/**
* 团长分销下单处理统计数据逻辑
* @throws \App\Exception\custom\MarketingException
*/
public
function
refund_order_process_logicAction
()
{
$params
=
$this
->
params
;
$data
=
PindanActivityInviteOrderService
::
refundOrder
(
$params
);
return
$this
->
success
([
"result"
=>
$data
]);
}
/**
* 团长分销,任务中心
* @throws Exception
*/
public
function
task_controlAction
()
{
$params
=
$this
->
params
;
$data
=
PindanActivityColonelConfigService
::
getTaskData
(
$params
);
return
$this
->
success
([
"result"
=>
$data
]);
}
/**
* 团长分销,数据统计
* @throws Exception
*/
public
function
colonel_indexAction
()
{
(
new
ColonelCenterValidate
())
->
validate
();
$params
=
$this
->
params
;
$userId
=
$params
[
"user_id"
];
$user
=
[];
if
(
!
empty
(
$userId
))
{
$wechatInfo
=
UserService
::
userWechatBind
([
"user_id"
=>
$userId
]);
if
(
!
empty
(
$wechatInfo
))
{
$user
=
[
"user_id"
=>
$wechatInfo
[
0
][
"user_id"
],
"user_nick"
=>
$wechatInfo
[
0
][
"user_nick"
],
"user_avatar"
=>
$wechatInfo
[
0
][
"user_avatar"
]
];
}
$incomeData
=
PindanActivityInviteOrderService
::
incomeStatistics
([
"user_ids"
=>
[
$userId
]]);
$orderNumData
=
PindanActivityInviteOrderService
::
inviteOrderNumberStatistics
([
"user_ids"
=>
[
$userId
]]);
return
$this
->
success
([
"result"
=>
[
"income"
=>
$incomeData
[
$userId
],
"order_num"
=>
$orderNumData
[
$userId
],
"user"
=>
$user
]]);
}
return
$this
->
success
([
"result"
=>
[]]);
}
/**
* 团长分销,账单详情
* @throws Exception
*/
public
function
bill_infoAction
()
{
(
new
ColonelCenterValidate
())
->
validate
();
$params
=
$this
->
params
;
$data
=
PindanActivityInviteOrderService
::
getPayInfoList
(
$params
);
return
$this
->
success
([
"result"
=>
$data
]);
}
/**
* 团长分销,下单记录
* @throws \App\Exception\custom\ParamException
*/
public
function
invite_order_recordAction
()
{
(
new
ColonelCenterValidate
())
->
validate
();
$params
=
$this
->
params
;
$data
=
PindanActivityInviteOrderService
::
getInviteOrderRecord
(
$params
);
return
$this
->
success
([
"result"
=>
$data
]);
}
}
application/modules/Marketing/controllers/Marketing.php
View file @
0e98cead
...
@@ -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/ColonelService.php
0 → 100644
View file @
0e98cead
This diff is collapsed.
Click to expand it.
application/services/marketing/MarketingService.php
View file @
0e98cead
...
@@ -6,6 +6,7 @@ namespace App\Services\marketing;
...
@@ -6,6 +6,7 @@ namespace App\Services\marketing;
use
Api\PhpServices\Ksy\Ks3Api
;
use
Api\PhpServices\Ksy\Ks3Api
;
use
Api\PhpUtils\Http\HttpUtil
;
use
Api\PhpUtils\Http\HttpUtil
;
use
App\Exception\custom\InterfaceException
;
use
App\Exception\custom\InterfaceException
;
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
;
...
@@ -147,6 +148,47 @@ class MarketingService
...
@@ -147,6 +148,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
...
@@ -851,6 +893,24 @@ class MarketingService
...
@@ -851,6 +893,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
...
...
application/services/marketing/PindanActivityColonelConfigService.php
0 → 100644
View file @
0e98cead
<?php
namespace
App\Services\marketing
;
use
App\Exception\custom\MarketingException
;
use
App\Models\marketing\mysql\ColonelDistributorInviteOrderNum
;
use
App\Models\marketing\mysql\Marketing
;
use
App\Models\marketing\mysql\ColonelDistributorConfig
;
class
PindanActivityColonelConfigService
{
/**
* 编辑团长分销活动配置
* @param array $params
* @return bool
* @throws MarketingException
*/
public
static
function
editColonelConfig
(
$params
=
[])
{
$date
=
$params
[
"date"
];
$type
=
empty
(
$params
[
"type"
])
?
ColonelDistributorConfig
::
TYPE_COLONEL
:
$params
[
"type"
];
$configList
=
$params
[
"config"
];
$marketingId
=
$params
[
"marketing_id"
];
if
(
empty
(
$configList
))
{
throw
new
MarketingException
([
'cus'
=>
MarketingException
::
COLONEL_CONFIG_NULL
]);
}
if
(
count
(
$configList
)
>
6
)
{
throw
new
MarketingException
([
'cus'
=>
MarketingException
::
COLONEL_LEVEL_SIX
]);
}
$idRes
=
ColonelDistributorConfig
::
getRecord
([
"date"
=>
$date
,
"type"
=>
$type
,
"marketing_id"
=>
$marketingId
],
[
"colonel_config_id"
]);
if
(
!
empty
(
$idRes
))
{
ColonelDistributorConfig
::
save
([
"marketing_id"
=>
$marketingId
,
"date"
=>
$date
,
"type"
=>
$type
,
"data"
=>
$configList
,
],
[
"colonel_config_id"
=>
$idRes
[
"colonel_config_id"
]]);
}
else
{
ColonelDistributorConfig
::
save
([
"marketing_id"
=>
$marketingId
,
"date"
=>
$date
,
"type"
=>
$type
,
"data"
=>
$configList
,
]);
}
return
true
;
}
/**
* 团长分销活动配置
* @param array $params
* @return array
*/
public
static
function
colonelConfig
(
$params
=
[])
{
$day
=
empty
(
$params
[
"date"
])
?
date
(
"Y-m-d"
)
:
$params
[
"date"
];
$type
=
empty
(
$params
[
"type"
])
?
ColonelDistributorConfig
::
TYPE_COLONEL
:
$params
[
"type"
];
$config
=
ColonelDistributorConfig
::
getRecord
([
"date"
=>
$day
,
"type"
=>
$type
]);
if
(
empty
(
$config
))
{
$config
=
ColonelDistributorConfig
::
getRecord
([
"date[<=]"
=>
$day
,
"ORDER"
=>
[
"date"
=>
"DESC"
],
"LIMIT"
=>
1
]);
}
$data
=
[];
if
(
!
empty
(
$config
))
{
$configData
=
json_decode
(
$config
[
"data"
],
true
);
foreach
(
$configData
as
$key
=>
$item
)
{
$data
[
$key
][
"date"
]
=
$config
[
"date"
];
$data
[
$key
][
"level"
]
=
$item
[
"level"
];
$data
[
$key
][
"assess_order_num"
]
=
$item
[
"assess_order_num"
];
$data
[
$key
][
"reward_amount"
]
=
$item
[
"reward_amount"
];
}
$sortKeys
=
array_column
(
$data
,
"level"
);
array_multisort
(
$sortKeys
,
SORT_ASC
,
$data
);
}
return
$data
;
}
/**
* 团长分销活动任务中心列表
* @param array $params
* @return array
*/
public
static
function
getTaskData
(
$params
=
[])
{
$hour
=
date
(
"H"
);
if
(
$hour
<
10
&&
$hour
>
0
)
{
$date
=
date
(
"Y-m-d"
,
strtotime
(
"-1 day"
));
}
elseif
(
$hour
>
16
)
{
$date
=
date
(
"Y-m-d"
);
}
else
{
$date
=
date
(
"Y-m-d"
);
}
$num
=
0
;
if
(
!
empty
(
$params
[
"user_id"
]))
{
$inviteOrderNumRes
=
ColonelDistributorInviteOrderNum
::
getRecord
([
"colonel_user_id"
=>
$params
[
"user_id"
],
"date"
=>
$date
,
]);
$num
=
empty
(
$inviteOrderNumRes
[
"num"
])
?
0
:
$inviteOrderNumRes
[
"num"
];
}
$configList
=
self
::
colonelConfig
([
"date"
=>
$date
,
"type"
=>
ColonelDistributorConfig
::
TYPE_COLONEL
]);
if
(
!
empty
(
$configList
))
{
foreach
(
$configList
as
$key
=>
$config
)
{
$configList
[
$key
][
"is_finish"
]
=
0
;
if
(
$config
[
"assess_order_num"
]
<=
$num
)
{
$configList
[
$key
][
"is_finish"
]
=
1
;
}
}
}
return
[
"number"
=>
$num
,
'list'
=>
$configList
];
}
}
\ No newline at end of file
application/services/marketing/PindanActivityInviteOrderService.php
0 → 100644
View file @
0e98cead
This diff is collapsed.
Click to expand it.
application/services/marketing/TakePlaceService.php
View file @
0e98cead
...
@@ -54,7 +54,8 @@ class TakePlaceService
...
@@ -54,7 +54,8 @@ class TakePlaceService
public
static
function
add
(
$params
)
public
static
function
add
(
$params
)
{
{
//验证life_account_id
//验证life_account_id
if
(
isset
(
$params
[
'life_account_id'
]))
{
$lifeAccountId
=
MarketingService
::
getPublicLifeAccountId
();
if
(
isset
(
$params
[
'life_account_id'
])
&&
$params
[
'life_account_id'
]
!=
$lifeAccountId
)
{
$url
=
config
(
'interface'
,
'merchant.lifeaccount.get_life_account_by_id'
);
$url
=
config
(
'interface'
,
'merchant.lifeaccount.get_life_account_by_id'
);
$lifeAccountRes
=
(
new
Request
())
->
get
(
$url
,
[
"life_account_id"
=>
$params
[
"life_account_id"
]]);
$lifeAccountRes
=
(
new
Request
())
->
get
(
$url
,
[
"life_account_id"
=>
$params
[
"life_account_id"
]]);
...
@@ -63,9 +64,9 @@ class TakePlaceService
...
@@ -63,9 +64,9 @@ class TakePlaceService
}
}
}
}
$lifeAccountId
=
MarketingService
::
getPublicLifeAccountId
();
$data
[
'life_account_id'
]
=
$params
[
'life_account_id'
]
??
$lifeAccountId
;
$data
[
'life_account_id'
]
=
$params
[
'life_account_id'
]
??
$lifeAccountId
;
$data
[
'take_place_name'
]
=
$params
[
'name'
];
$data
[
'take_place_name'
]
=
$params
[
'name'
];
$data
[
'take_place_pic'
]
=
$params
[
'take_place_pic'
]
??
''
;
$data
[
'longitude'
]
=
$params
[
'longitude'
];
$data
[
'longitude'
]
=
$params
[
'longitude'
];
$data
[
'latitude'
]
=
$params
[
'latitude'
];
$data
[
'latitude'
]
=
$params
[
'latitude'
];
$data
[
'location'
]
=
$params
[
'location'
];
$data
[
'location'
]
=
$params
[
'location'
];
...
...
application/services/user/UserService.php
View file @
0e98cead
...
@@ -193,6 +193,10 @@ class UserService
...
@@ -193,6 +193,10 @@ class UserService
$data
[
'user_id'
]
=
$params
[
'user_id'
];
$data
[
'user_id'
]
=
$params
[
'user_id'
];
}
}
if
(
!
empty
(
$params
[
'phone'
]))
{
$data
[
'phone'
]
=
$params
[
'phone'
];
}
$userList
=
UserWechatBind
::
getRecords
(
$data
);
$userList
=
UserWechatBind
::
getRecords
(
$data
);
return
$userList
;
return
$userList
;
}
}
...
...
deploy/start_env/ini/php.ini
View file @
0e98cead
...
@@ -1891,6 +1891,7 @@ opcache.huge_code_pages=1
...
@@ -1891,6 +1891,7 @@ opcache.huge_code_pages=1
apc.shm_size
=
1024M
apc.shm_size
=
1024M
apc.slam_defense
=
1
apc.slam_defense
=
1
apc.serializer
=
igbinary
apc.serializer
=
igbinary
apc.enable_cli
=
1
[memcached]
[memcached]
memcached.sess_connect_timeout
=
1000
memcached.sess_connect_timeout
=
1000
...
...
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