Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
M
my-yaf-project
Project
Project
Details
Activity
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
chenchuanwen
my-yaf-project
Commits
a8b38774
Commit
a8b38774
authored
Oct 30, 2018
by
wwccw0591
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
pc
parent
e4f99a5d
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
968 additions
and
888 deletions
+968
-888
OrderConfirmUtil.php
application/library/Order/OrderConfirmUtil.php
+1
-1
ShopkeeperService.php
application/models/Business/Store/ShopkeeperService.php
+32
-3
Member.php
application/models/DAO/Member.php
+673
-668
Diliveryman.php
application/models/DAO/Order/Diliveryman.php
+6
-15
Order.php
application/models/DAO/Order/Order.php
+5
-0
CodeConfig.php
application/models/Error/CodeConfig.php
+188
-197
Shopkeeper.php
application/modules/Client/controllers/Shopkeeper.php
+24
-3
User.php
application/modules/Client/controllers/User.php
+1
-1
receivePayment.php
public/client/shopkeeper/receivePayment.php
+20
-0
searchDelivery.php
public/client/shopkeeper/searchDelivery.php
+18
-0
No files found.
application/library/Order/OrderConfirmUtil.php
View file @
a8b38774
...
...
@@ -959,7 +959,7 @@ class OrderConfirmUtil {
$memberId
=
$orderList
[
0
][
'buyer_id'
];
$updateOrder
=
array
();
$updateOrder
[
'order_state'
]
=
\Our\ApiConst
::
orderStateWaitConfirm
;
$updateOrder
[
'is_receive_payment'
]
=
\Our\ApiConst
::
one
;
$updateOrder
[
'is_receive_payment'
]
=
TIMESTAMP
;
$updateOrder
[
'payment_time'
]
=
(
isset
(
$data
[
'payment_time'
])
?
strtotime
(
$data
[
'payment_time'
])
:
TIMESTAMP
);
$updateOrder
[
'payment_type'
]
=
$this
->
getOrderPaymentType
(
$data
[
'pay_type'
]);
$orderUpdateResult
=
$orderModel
->
update
(
$orderCon
,
$updateOrder
);
...
...
application/models/Business/Store/ShopkeeperService.php
View file @
a8b38774
...
...
@@ -268,14 +268,14 @@ class ShopkeeperServiceModel extends \Business\AbstractModel
return
$data
;
}
public
function
getRetrunDatas
(
$storeId
,
$where
,
$pageIndex
,
$pageSize
)
public
function
getRetrunDatas
(
$storeId
,
$where
,
$pageIndex
,
$pageSize
,
$order
=
array
(
'gmt_update'
=>
'desc'
)
)
{
$orderGoodsDao
=
\DAO\Order\OrderGoodsModel
::
getInstance
();
$orderDao
=
\DAO\Order\OrderModel
::
getInstance
();
$goodsDao
=
\DAO\GoodsModel
::
getInstance
();
$orderCommonDao
=
\DAO\Order\OrderCommonModel
::
getInstance
();
$returnData
=
\Our\RedisHelper
::
cachedFunction
(
\Redis\Db5\OrderRedisModel
::
getInstance
(),
array
(
&
$orderDao
,
'getList'
),
array
(
$where
,
$orderDao
->
getOrderDetailField
(),
$pageIndex
,
$pageSize
,
$order
=
array
(
'gmt_update'
=>
'desc'
)),
\Our\ApiConst
::
oneDaySecond
,
array
(
$storeId
));
$returnData
=
\Our\RedisHelper
::
cachedFunction
(
\Redis\Db5\OrderRedisModel
::
getInstance
(),
array
(
&
$orderDao
,
'getList'
),
array
(
$where
,
$orderDao
->
getOrderDetailField
(),
$pageIndex
,
$pageSize
,
$order
,
\Our\ApiConst
::
oneDaySecond
,
array
(
$storeId
)
));
//$returnData = $orderDao->getOrders($where, $this->orderListField, $pageIndex, $pageSize);
$orders
=
$returnData
[
'list'
];
if
(
!
empty
(
$orders
))
{
...
...
@@ -363,6 +363,7 @@ class ShopkeeperServiceModel extends \Business\AbstractModel
public
function
getOrders
(
$memberId
,
$pageIndex
,
$pageSize
,
$orderState
,
$keyword
)
{
$order
=
array
(
'gmt_update'
=>
'desc'
);
$storeId
=
$this
->
_getStoreByMemberId
(
$memberId
);
if
(
empty
(
$storeId
))
{
ErrorModel
::
throwException
(
CodeConfigModel
::
paramsError
);
...
...
@@ -383,6 +384,10 @@ class ShopkeeperServiceModel extends \Business\AbstractModel
if
(
$orderState
==
ApiConst
::
oneHandred
)
{
$where
.=
' and han_order.shipping_type='
.
ApiConst
::
bySelf
;
}
else
{
$order
=
array
(
'diliveryman_id'
=>
'asc'
,
'gmt_update'
=>
'asc'
);
$where
.=
' and han_order.shipping_type='
.
ApiConst
::
bySeller
;
}
...
...
@@ -394,7 +399,7 @@ class ShopkeeperServiceModel extends \Business\AbstractModel
}
if
(
!
empty
(
$where
))
{
$returnData
=
$this
->
getRetrunDatas
(
$storeId
,
$where
,
$pageIndex
,
$pageSize
);
$returnData
=
$this
->
getRetrunDatas
(
$storeId
,
$where
,
$pageIndex
,
$pageSize
,
$order
);
}
else
{
$returnData
=
new
\stdClass
();
}
...
...
@@ -417,6 +422,23 @@ class ShopkeeperServiceModel extends \Business\AbstractModel
return
\Our\RedisHelper
::
cachedFunction
(
\Redis\Db5\OrderRedisModel
::
getInstance
(),
array
(
&
$diliveryMan
,
'getDeliveryManByStoreId'
),
array
(
$storeId
),
\Our\ApiConst
::
oneHourCache
,
array
(
$storeId
));
}
public
function
confirmReceivePayment
(
$memberId
,
$orderId
){
$memberDao
=
\DAO\MemberModel
::
getInstance
();
$storeId
=
$memberDao
->
getInfo
(
$memberId
,
'store_id'
);
$orderDao
=
\DAO\Order\OrderModel
::
getInstance
(
DbNameConst
::
masterDBConnectName
);
$where
[
'order_id'
]
=
$orderId
;
$where
[
'store_id'
]
=
$storeId
;
$count
=
$orderDao
->
getCountByWhere
(
$where
);
if
(
$count
){
$data
[
'is_receive_payment'
]
=
TIMESTAMP
;
$updateId
=
$orderDao
->
updateByOrderId
(
$data
,
$orderId
);
return
$updateId
;
}
else
{
ErrorModel
::
throwException
(
CodeConfigModel
::
notExsitOrder
);
}
}
/**
* 订单详情
*/
...
...
@@ -886,6 +908,13 @@ class ShopkeeperServiceModel extends \Business\AbstractModel
return
$res
;
}
public
function
getDiliveryMan
(
$mobile
){
$memberDao
=
\DAO\MemberModel
::
getInstance
();
$member
=
$memberDao
->
getByMemberMobile
(
$mobile
);
return
$member
;
}
/**
* 登录业务
*
...
...
application/models/DAO/Member.php
View file @
a8b38774
<?php
namespace
DAO
;
use
Error\CodeConfigModel
;
use
Error\ErrorModel
;
use
Our\Common
;
use
Our\ImageConst
;
use
Our\Log
;
use
Our\NameConst
;
use
Our\ApiConst
;
use
Our\Validate
;
/**
* 用户数据层
*/
class
MemberModel
extends
\DAO\AbstractModel
{
private
$memberMysql
;
protected
$_tableName
=
'han_member'
;
//有效用户返回数据
private
$availMemberColumn
=
array
(
'member_id'
,
'member_name'
,
'member_truename'
,
'member_avatar'
,
'member_sex'
,
'member_birthday'
,
'member_mobile'
,
'member_mobile_bind'
,
'member_qq'
,
'member_qqopenid'
,
'member_qqinfo'
,
'member_wxinfo'
,
'member_wxopenid'
,
'member_sinaopenid'
,
'member_sinainfo'
,
'member_points'
,
'member_state'
,
'member_quicklink'
,
'member_exppoints'
,
'store_id'
,
'iswx'
,
'agree_flag'
,
'seller_id'
,
'diliveryman_id'
,
'member_tag_ids'
,
'member_group_ids'
,
'is_teacher'
,
'member_email'
,
'member_email_bind'
,
'is_wxsend'
);
//有效用户返回数据
private
$memberColumn
=
array
(
'member_id'
,
'member_name'
,
'member_truename'
,
'member_avatar'
,
'member_sex'
,
'member_birthday'
,
'member_mobile'
,
'member_mobile_bind'
,
'member_qq'
,
'member_qqopenid'
,
'member_qqinfo'
,
'member_wxinfo'
,
'member_wxopenid'
,
'member_sinaopenid'
,
'member_sinainfo'
,
'member_points'
,
'member_state'
,
'member_quicklink'
,
'member_exppoints'
,
'store_id'
,
'iswx'
,
'agree_flag'
,
'seller_id'
,
'diliveryman_id'
,
'member_tag_ids'
,
'member_group_ids'
,
'is_teacher'
,
'member_email'
,
'member_email_bind'
,
'is_wxsend'
,
'member_state'
);
public
function
init
()
{
$this
->
memberMysql
=
\Mysql\MemberModel
::
getInstance
();
}
/**
* 获取会员头像
* @param $memberId 对应会员ID
* @param $memberAvatar 会员对应member_avatar字段
* @return string
*/
public
function
getMemberAvatarUrl
(
$memberId
,
$memberAvatar
)
{
$filename
=
\Our\ImageConst
::
defaultMemberAvatarName
;
if
(
$memberAvatar
)
{
if
(
strpos
(
$memberAvatar
,
\Our\NameConst
::
http
)
===
0
)
{
return
$memberAvatar
;
}
else
{
$filename
=
$memberAvatar
;
}
//$filename = \Our\ImageConst::memberAvatarPrefix . $memberId;
}
return
\Our\Common
::
getStaticFile
(
$filename
,
\Our\ImageConst
::
memberAvatar
);
}
public
function
getMemberAvatar
(
$memberId
){
$basePath
=
\Bootstrap
::
getUrlIniConfig
(
'source'
);
$memberPath
=
ImageConst
::
memberAvatar
;
$fileName
=
Common
::
format
(
ImageConst
::
memberAvatarPrefix
.
"
{
0
}
"
.
'.jpg'
,
$memberId
);
$file
=
$basePath
.
$memberPath
.
$fileName
;
if
(
file_exists
(
$file
)){
if
(
$fileName
==
'member_avatar_26.jpg'
){
Log
::
getInstance
()
->
write
(
$file
.
'1'
,
"/data/log/test"
);
}
$avatar
=
\Our\Common
::
getStaticFile
(
$fileName
,
\Our\ImageConst
::
memberAvatar
);
}
else
{
if
(
$fileName
==
'member_avatar_26.jpg'
){
Log
::
getInstance
()
->
write
(
$file
.
'2'
,
"/data/log/test"
);
}
$memerAvatar
=
$this
->
getInfo
(
$memberId
,
'member_avatar'
);
$avatar
=
$this
->
getMemberAvatarUrl
(
$memberId
,
$memerAvatar
);
}
return
$avatar
;
}
//原生方法
public
function
query
()
{
$mysql
=
\Mysql\Slave\MemberModel
::
getInstance
();
$res
=
$mysql
->
query
(
"select * from han_member"
);
echo
json_encode
(
$res
);
exit
;
}
//对主库进行操作
public
function
update
(
$sql
)
{
$mysql
=
\Mysql\UserModel
::
getInstance
();
$res
=
$mysql
->
excute
(
$sql
);
return
$res
;
}
public
function
getOneByMobileAndPassword
(
$mobile
,
$password
)
{
$this
->
setDb
(
\Our\DbNameConst
::
masterDBConnectName
);
$where
[
NameConst
::
memberMobile
]
=
$mobile
;
$addKey
=
Common
::
getConfig
(
'password.key'
);
if
(
!
empty
(
$addKey
)){
$where
=
''
;
$where
=
Common
::
format
(
"(member_mobile = '
{
0
}
') AND (member_passwd = MD5(CONCAT(member_time,'
{
1}','{2
}
')))"
,
$mobile
,
$password
,
$addKey
);
// $where[NameConst::memberPasswd] = Common::format("MD5(CONCAT(member_time,member_passwd,'{0}'))",$addKey);
}
else
{
$where
[
NameConst
::
memberPasswd
]
=
md5
(
$password
);
}
$result
=
$this
->
db
->
select
(
$this
->
memberColumn
)
->
from
(
$this
->
_tableName
)
->
where
(
$where
)
->
fetchOne
();
if
(
$result
)
{
$memberAvatarUrl
=
$this
->
getMemberAvatarUrl
(
$result
[
'member_id'
],
$result
[
'member_avatar'
]);
$result
[
'memberAvatarUrl'
]
=
$memberAvatarUrl
;
}
return
$result
;
}
public
function
saveInfo
(
$data
,
$memberId
)
{
$this
->
setDb
(
\Our\DbNameConst
::
masterDBConnectName
);
$result
=
$this
->
db
->
update
(
$this
->
_tableName
)
->
rows
(
$data
)
->
where
(
array
(
'member_id'
=>
$memberId
))
->
execute
();
if
(
$result
!==
false
)
{
$memberDb0Redis
=
\Redis\Db0\MemberRedisModel
::
getInstance
();
$member
=
$data
;
if
(
isset
(
$member
[
'member_avatar'
])
&&
$member
[
'member_avatar'
])
{
$memberAvatarUrl
=
$this
->
getMemberAvatarUrl
(
$memberId
,
$member
[
'member_avatar'
]);
$member
[
'memberAvatarUrl'
]
=
$memberAvatarUrl
;
}
if
(
isset
(
$member
[
'member_passwd'
])
&&
$member
[
'member_passwd'
]){
unset
(
$member
[
'member_passwd'
]);
}
$memberDb0Redis
->
tableHMSet
(
$memberId
,
$member
);
}
return
$result
;
}
public
function
getWxUserToken
(
$memberId
){
$memberDb0Redis
=
\Redis\Db0\MemberRedisModel
::
getInstance
();
$member
=
$memberDb0Redis
->
tableHGAll
(
$memberId
);
$memberDb0Redis
->
tableExpire
(
$memberId
,
ApiConst
::
tenDaySecond
);
if
(
isset
(
$member
[
'wxUserToken'
])
&&
$member
[
'wxUserToken'
]){
return
$member
[
'wxUserToken'
];
}
return
\Our\NameConst
::
emptyString
;
}
public
function
saveWxUserToken
(
$key
,
$memberId
){
$member
=
$this
->
getInfo
(
$memberId
);
$memberDb0Redis
=
\Redis\Db0\MemberRedisModel
::
getInstance
();
$memberDb0Redis
->
tableHMSet
(
$memberId
,
array
(
'wxUserToken'
=>
$key
));
}
/**
* 保存用户信息
*/
public
function
addInfo
(
$data
)
{
// $this->setDb(\Our\DbNameConst::masterDBConnectName);
// $result = $this->db->insert($this->_tableName)->rows($data)->execute();
$result
=
$this
->
add
(
$data
);
if
(
$result
)
{
$memberDb0Redis
=
\Redis\Db0\MemberRedisModel
::
getInstance
();
$memberAvatar
=
''
;
if
(
isset
(
$data
[
'member_avatar'
]))
{
$memberAvatar
=
$data
[
'member_avatar'
];
}
$memberAvatarUrl
=
$this
->
getMemberAvatarUrl
(
$result
,
$memberAvatar
);
$data
[
'memberAvatarUrl'
]
=
$memberAvatarUrl
;
$data
[
'member_id'
]
=
$result
;
$memberDb0Redis
->
tableHMSet
(
$result
,
$data
);
return
$this
->
db
->
getInsertId
();
}
return
false
;
}
/**
* 保存用户信息
*/
public
function
add
(
$data
)
{
$this
->
setDb
(
\Our\DbNameConst
::
masterDBConnectName
);
$result
=
$this
->
db
->
insert
(
$this
->
_tableName
)
->
rows
(
$data
)
->
execute
();
return
$result
;
}
/**
* 类实例
*
* @var \DAO\UserModel
*/
private
static
$_instance
=
null
;
public
function
getInfo
(
$memberId
,
$field
=
false
)
{
$memberDb0Redis
=
\Redis\Db0\MemberRedisModel
::
getInstance
();
if
(
$field
)
{
$memberField
=
$memberDb0Redis
->
tableHGet
(
$memberId
,
$field
);
if
(
!
empty
(
$memberField
))
{
return
$memberField
;
}
else
{
$one
=
$this
->
getOneByMemberId
(
$memberId
,
$field
);
return
$one
[
$field
];
}
}
else
{
$member
=
$memberDb0Redis
->
tableHGAll
(
$memberId
);
$memberDb0Redis
->
tableExpire
(
$memberId
,
ApiConst
::
tenDaySecond
);
if
(
!
empty
(
$member
))
{
$return
=
array
(
'memberId'
=>
(
int
)
$member
[
'member_id'
],
'memberName'
=>
$member
[
'member_name'
],
'memberTrueName'
=>
$member
[
'member_truename'
],
'memberAvatar'
=>
$member
[
'member_avatar'
],
'memberSex'
=>
(
int
)
$member
[
'member_sex'
],
'memberBirthday'
=>
$member
[
'member_birthday'
],
'memberEmail'
=>
isset
(
$member
[
'member_email'
])
?
$member
[
'member_email'
]
:
''
,
'memberEmailBind'
=>
isset
(
$member
[
'member_email_bind'
])
?
(
int
)
$member
[
'member_email_bind'
]
:
ApiConst
::
zero
,
'memberMobile'
=>
$member
[
'member_mobile'
],
'memberMobileBind'
=>
(
int
)
$member
[
'member_mobile_bind'
],
'memberWxinfo'
=>
isset
(
$member
[
'member_wxinfo'
])
&&
$member
[
'member_wxinfo'
]
?
unserialize
(
$member
[
'member_wxinfo'
])
:
new
\stdClass
(),
'memberWxopenid'
=>
$member
[
'member_wxopenid'
],
'sellerId'
=>
(
int
)
$member
[
'seller_id'
],
'diliverymanId'
=>
(
int
)
$member
[
'diliveryman_id'
],
'storeId'
=>
(
int
)
$member
[
'store_id'
],
'memberAvatarUrl'
=>
$member
[
'memberAvatarUrl'
],
'isWxsend'
=>
$member
[
'is_wxsend'
],
'pushSet'
=>
$member
[
'push_set'
]
);
}
else
{
$member
=
$this
->
getOneByMemberId
(
$memberId
,
'*'
);
$return
=
array
(
'memberId'
=>
$member
[
'member_id'
],
'memberName'
=>
$member
[
'member_name'
],
'memberTrueName'
=>
$member
[
'member_truename'
],
'memberAvatar'
=>
$member
[
'member_avatar'
],
'memberSex'
=>
$member
[
'member_sex'
],
'memberBirthday'
=>
$member
[
'member_birthday'
],
'memberEmail'
=>
isset
(
$member
[
'member_email'
])
?
$member
[
'member_email'
]
:
''
,
'memberEmailBind'
=>
isset
(
$member
[
'member_email_bind'
])
?
$member
[
'member_email_bind'
]
:
ApiConst
::
zero
,
'memberMobile'
=>
$member
[
'member_mobile'
],
'memberMobileBind'
=>
$member
[
'member_mobile_bind'
],
'memberWxinfo'
=>
isset
(
$member
[
'member_wxinfo'
])
?
unserialize
(
$member
[
'member_wxinfo'
])
:
new
\stdClass
(),
'memberWxopenid'
=>
$member
[
'member_wxopenid'
],
'sellerId'
=>
$member
[
'seller_id'
],
'diliverymanId'
=>
$member
[
'diliveryman_id'
],
'storeId'
=>
$member
[
'store_id'
],
'memberAvatarUrl'
=>
$member
[
'memberAvatarUrl'
],
'isWxsend'
=>
$member
[
'is_wxsend'
],
'pushSet'
=>
$member
[
'push_set'
],
);
foreach
(
$member
as
$key
=>
$value
)
{
if
(
empty
(
$value
)
||
is_null
(
$value
))
{
$member
[
$key
]
=
ApiConst
::
zero
;
}
}
foreach
(
$return
as
$key
=>
$value
)
{
if
(
empty
(
$value
)
||
is_null
(
$value
))
{
$return
[
$key
]
=
ApiConst
::
zero
;
}
}
$memberDb0Redis
->
tableHMSet
(
$memberId
,
$member
);
}
return
$return
;
}
}
public
function
updateInfo
(
$data
,
$where
)
{
$this
->
setDb
(
\Our\DbNameConst
::
masterDBConnectName
);
$result
=
$this
->
db
->
update
(
$this
->
_tableName
)
->
rows
(
$data
)
->
where
(
$where
)
->
execute
();
return
$result
;
}
public
function
getOneByWhereWithField
(
$where
,
$field
)
{
$this
->
setDb
(
$this
->
dbName
);
$member
=
$this
->
db
->
from
(
$this
->
_tableName
)
->
select
(
$field
)
->
where
(
$where
)
->
fetchOne
();
return
$member
;
}
public
function
getOneByMemberId
(
$memberId
,
$field
=
'*'
)
{
$this
->
setDb
(
$this
->
dbName
);
$where
[
'member_id'
]
=
$memberId
;
$member
=
$this
->
getOneByWhereWithField
(
$where
,
$field
);;
if
(
isset
(
$member
[
'member_avatar'
])){
$memberAvatarUrl
=
$this
->
getMemberAvatarUrl
(
$memberId
,
$member
[
'member_avatar'
]);
$member
[
'memberAvatarUrl'
]
=
$memberAvatarUrl
;
}
return
$member
;
}
/**
* 获取类实例
*
* @return \DAO\UserModel
*/
public
static
function
getInstance
(
$dbName
=
\Our\DbNameConst
::
salveDBConnectName
)
{
if
(
!
(
self
::
$_instance
instanceof
self
))
{
self
::
$_instance
=
new
self
();
}
return
self
::
$_instance
;
}
/**
* 验证会员信息
* @param $where
* @return array
* @throws \Exception
*/
public
function
getValidMember
(
$where
)
{
if
(
$where
[
'memberName'
])
{
if
(
!
\Our\Validate
::
checkLengthRange
(
$where
[
'memberName'
],
1
,
25
))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
memberNameLengthLimit
);
}
}
/*if ($where['memberBirthday']) {
if (!\Our\Validate::checkDateStr($where['memberBirthday'])) {
\Error\ErrorModel::throwException(\Error\CodeConfigModel::memberBirthdayError);
}
if (strtotime($where['memberBirthday']) > strtotime(date('Y-m-d'))) {
\Error\ErrorModel::throwException(\Error\CodeConfigModel::illegalMemberBirthday);
}
}*/
if
(
!
(
$where
[
'memberSex'
]
&&
in_array
(
$where
[
'memberSex'
],
array
(
\Our\ApiConst
::
woman
,
\Our\ApiConst
::
man
))))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
wrongMemberSex
);
}
$memberInfo
[
'memberName'
]
=
$where
[
'memberName'
];
$memberInfo
[
'memberSex'
]
=
$where
[
'memberSex'
];
$memberInfo
=
\Our\Common
::
convertHump
(
$memberInfo
);
return
$memberInfo
;
}
public
function
validMemberNameAndAvatar
(
$where
){
if
(
!
$where
[
'avatar'
]){
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
emptyUserAvatar
);
}
if
(
!
$where
[
'nickname'
]){
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
emptyUserNickname
);
}
return
true
;
}
public
function
validRegisterInfo
(
$where
)
{
if
(
!
\Our\Common
::
checkMobilePhone
(
$where
[
'mobile'
]))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
wrongMobileFormat
);
}
if
(
!
$where
[
'password'
])
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
emptyPassword
);
}
if
(
!
\Our\Validate
::
checkPassword
(
$where
[
'password'
]))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
passwordLimit
);
}
if
(
!
$where
[
'deviceType'
])
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
emptyDeviceType
);
}
if
(
!
$where
[
'deviceUniqueCode'
])
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
emptyDeviceUniqueCode
);
}
return
true
;
}
public
function
checkChangedInfo
(
$where
)
{
$this
->
checkRegisterMobile
(
$where
);
if
(
!
\Our\Validate
::
checkPassword
(
$where
[
'password'
]))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
passwordLimit
);
}
}
/**
* 验证注册手机号码
*/
public
function
checkRegisterMobile
(
$where
)
{
$mobile
=
$where
[
'mobile'
];
if
(
!
\Our\Common
::
checkMobilePhone
(
$mobile
))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
wrongMobileFormat
);
}
$member
=
$this
->
getOneByWhereWithField
(
array
(
'member_mobile'
=>
$mobile
),
'member_id'
);
if
(
$member
)
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
registerMobileExist
);
}
return
true
;
}
/**
* 验证手机是否存在有效用户
* @param $where
*/
public
function
checkLoginMobile
(
$where
)
{
$mobile
=
$where
[
'mobile'
];
if
(
!
\Our\Common
::
checkMobilePhone
(
$mobile
))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
wrongMobileFormat
);
}
$member
=
$this
->
getOneByWhereWithField
(
array
(
'member_mobile'
=>
$mobile
,
'member_state'
=>
\Our\ApiConst
::
one
),
'member_id'
);
if
(
!
$member
)
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
memberMobileExist
);
}
return
true
;
}
/**
* 微信用户绑定发送验证码时验证表单
* @param $where
* @param $memberId
* @throws \Error\OurExceptionModel
* @throws \Exception
*/
public
function
checkWxBindMobileForSms
(
$where
,
$memberId
){
if
(
!
$memberId
){
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
wxMemberBindMobileSendCode
);
}
$member
=
$this
->
getInfo
(
$memberId
);
if
((
$member
[
'memberMobile'
]
&&
$member
[
'memberMobileBind'
])){
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
wxMemberHasBindMobile
);
}
return
true
;
}
public
function
checkWxBindMobileCommon
(
$where
){
$mobile
=
$where
[
'mobile'
];
if
(
!
\Our\Common
::
checkMobilePhone
(
$mobile
))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
wrongMobileFormat
);
}
$member
=
$this
->
getOneByWhereWithField
(
array
(
'member_mobile'
=>
$mobile
,
'member_state'
=>
\Our\ApiConst
::
one
),
'member_id'
);
if
(
$member
)
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
mobileExistMember
);
}
}
public
function
checkSaleMobile
(
$where
,
$memberId
)
{
if
(
!
$memberId
){
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
saleNotLogin
);
}
$member_mobile
=
$this
->
getInfo
(
$memberId
,
'member_mobile'
);
if
(
$member_mobile
!=
$where
[
'mobile'
])
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
salePhoneError
);
}
// $mobile = $where['mobile'];
// if (!\Our\Common::checkMobilePhone($mobile)) {
// \Error\ErrorModel::throwException(\Error\CodeConfigModel::wrongMobileFormat);
// }
// $member = $this->getOneByWhereWithField(array('member_mobile' => $mobile, 'member_state' => \Our\ApiConst::one), 'member_id');
// if ($member) {
// \Error\ErrorModel::throwException(\Error\CodeConfigModel::mobileExistMember);
// }
}
/**
* 微信用户更改手机号码提交表单时验证
* @param $where
* @param $memberId
* @throws \Error\OurExceptionModel
* @throws \Exception
*/
public
function
checkWxBindMobile
(
$where
){
$this
->
checkWxBindMobileCommon
(
$where
);
if
(
!
\Our\Validate
::
checkPassword
(
$where
[
'password'
]))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
passwordLimit
);
}
}
public
function
checkPassword
(
$data
)
{
if
(
!
(
$data
[
'password'
]
&&
$data
[
'rePassword'
]))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
emptyPasswordAndRepassword
);
}
if
(
$data
[
'password'
]
!=
$data
[
'rePassword'
])
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
differentPasswordAndRepassword
);
}
if
(
!
\Our\Validate
::
checkPassword
(
$data
[
'password'
]))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
passwordLimit
);
}
}
/**
* 更换密码时验证密码和旧密码
* @param $data
* @param $memberId
* @throws \Exception
*/
public
function
checkOldPassword
(
$data
,
$memberId
)
{
if
(
!
$data
[
'oldPassword'
])
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
emptyOldPassword
);
}
$memberCurrent
=
$this
->
getOneByWhereWithField
(
array
(
'member_id'
=>
$memberId
),
'member_passwd,member_time'
);
$addKey
=
Common
::
getConfig
(
'password.key'
);
if
(
!
(
$memberCurrent
&&
$memberCurrent
[
'member_passwd'
]
==
md5
(
$memberCurrent
[
'member_time'
]
.
$data
[
'oldPassword'
]
.
$addKey
)))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
worngOldPassword
);
}
$this
->
checkPassword
(
$data
);
}
public
function
checkDelMember
(
$data
)
{
if
(
!
(
APP_ENV
==
'test'
||
APP_ENV
==
'develop'
||
APP_ENV
==
'pre'
))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
noAvailForDelMember
);
}
if
(
!
$data
[
'mobile'
])
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
emptyMobileForDelMember
);
}
}
public
function
getMemberById
(
$memberId
)
{
$member
=
$this
->
getOneByWhereWithField
(
array
(
'member_id'
=>
$memberId
),
$this
->
availMemberColumn
);
foreach
(
$member
as
$key
=>
$value
)
{
if
(
empty
(
$value
)
||
is_null
(
$value
))
{
$member
[
$key
]
=
\Our\ApiConst
::
zero
;
}
}
$memberAvatarUrl
=
$this
->
getMemberAvatarUrl
(
$member
[
'member_id'
],
$member
[
'member_avatar'
]);
$member
[
'memberAvatarUrl'
]
=
$memberAvatarUrl
;
return
$member
;
}
public
function
getMemberForLogin
(
$memberIds
){
$member
=
array
();
$memberCon
[
'member_id'
]
=
array
(
'in'
,
$memberIds
);
$memberCon
[
'member_state'
]
=
\Our\ApiConst
::
one
;
$orders
=
array
(
'member_mobile'
=>
'desc'
,
'member_id'
=>
'desc'
);
$memberList
=
$this
->
getList
(
$memberCon
,
$this
->
availMemberColumn
,
$orders
);
if
(
$memberList
){
$member
=
$memberList
[
0
];
$memberAvatarUrl
=
$this
->
getMemberAvatarUrl
(
$member
[
'member_id'
],
$member
[
'member_avatar'
]);
$member
[
'memberAvatarUrl'
]
=
$memberAvatarUrl
;
}
return
$member
;
}
public
function
del
(
$where
)
{
$this
->
setDb
(
\Our\DbNameConst
::
masterDBConnectName
);
$result
=
$this
->
db
->
delete
(
$this
->
_tableName
)
->
where
(
$where
)
->
execute
();
return
$result
;
}
/**
* 个人中心统计数量更新
* @param $type
* /Our/NameConst
* const waitPay = 'waitPay';//待付款 order_state=10
* const waitShipments = 'waitShipments';//待发货 order_state=20,25
* const waitReceiving = 'waitReceiving';//待收货 order_state=30
* const waitEvaluate = 'waitEvaluate';//待评价 order_state=40 and evaluation_state=0,2
* const refund = 'refund';//退款中 seller_state=1 or (is_platform_in = 1 and platform_state = 0)
* const storeCollection = 'storeCollection';//店铺收藏数量
* const goodsCollection = 'goodsCollection';//商品收藏数量
* const footprint = 'footprint';//足迹数量
* @param $num
*/
public
function
_changeNum
(
$type
,
$memberId
,
$num
=
1
)
{
$memebrCenterDb1Redis
=
\Redis\Db1\MemberCenterRedisModel
::
getInstance
();
if
(
$memebrCenterDb1Redis
->
tableKeyExists
(
$memberId
)
!==
false
)
{
$memebrCenterDb1Redis
->
tableHIncrBy
(
$memberId
,
$type
,
$num
);
}
}
public
function
getList
(
$where
,
$field
=
\Our\NameConst
::
allField
,
$orders
=
array
()){
$this
->
setDb
(
$this
->
dbName
);
if
(
is_array
(
$where
)){
$where
=
$this
->
db
->
getSqlWhereByArray
(
$where
);
}
if
(
$orders
){
foreach
(
$orders
as
$key
=>
$order
){
$this
->
db
->
order
(
$key
,
$order
);
}
}
return
$this
->
db
->
from
(
$this
->
_tableName
)
->
select
(
$field
)
->
where
(
$where
)
->
fetchAll
();
}
public
function
changeNum
(
$memberId
,
$orderState
,
$evaluation_state
=
null
,
$num
=
1
)
{
switch
(
$orderState
)
{
case
ApiConst
::
orderStateWaitPay
:
$type
=
NameConst
::
waitPay
;
break
;
case
ApiConst
::
orderStateWaitSend
:
$type
=
NameConst
::
waitShipments
;
break
;
case
ApiConst
::
orderStateWaitRecieve
:
$type
=
NameConst
::
waitReceiving
;
break
;
case
ApiConst
::
orderStateComplete
:
$type
=
NameConst
::
waitEvaluate
;
break
;
default
:
break
;
}
if
(
$type
)
{
$this
->
_changeNum
(
$type
,
$memberId
,
$num
);
}
}
public
function
getListMemberUrl
(
$list
){
foreach
(
$list
as
&
$li
){
$li
[
'memberAvatar'
]
=
$this
->
getMemberAvatarUrl
(
$li
[
'memberId'
],
$li
[
'memberAvatar'
]);
}
return
$list
;
}
//删除统计缓存
public
function
deleteTotalCache
(
$memberId
,
$type
=
FALSE
){
$memebrCenterDb1Redis
=
\Redis\Db1\MemberCenterRedisModel
::
getInstance
();
if
(
!
empty
(
$type
)){
$memebrCenterDb1Redis
->
tableHDel
(
$memberId
,
$type
);
}
else
{
//$memebrCenterDb1Redis->tableDel($memberId);
$memebrCenterDb1Redis
->
tableHDel
(
$memberId
,
NameConst
::
waitPay
);
$memebrCenterDb1Redis
->
tableHDel
(
$memberId
,
NameConst
::
waitShipments
);
$memebrCenterDb1Redis
->
tableHDel
(
$memberId
,
NameConst
::
waitReceiving
);
$memebrCenterDb1Redis
->
tableHDel
(
$memberId
,
NameConst
::
waitEvaluate
);
$memebrCenterDb1Redis
->
tableHDel
(
$memberId
,
NameConst
::
refund
);
}
}
public
function
fromOrderStateToOrderState
(
$memberId
,
$fromState
,
$toState
)
{
$this
->
changeNum
(
$memberId
,
$fromState
,
null
,
-
1
);
$this
->
changeNum
(
$memberId
,
$toState
,
null
,
1
);
}
public
function
setIsWxsend
(
$memberId
,
$pushData
){
foreach
(
$pushData
as
$key
=>
$val
){
if
(
$key
!=
'timeDiff'
){
if
(
!
in_array
(
$val
,
array
(
ApiConst
::
closeMessage
,
ApiConst
::
openMessae
))){
ErrorModel
::
throwException
(
CodeConfigModel
::
paramsError
);
}
}
}
$data
[
'push_set'
]
=
serialize
(
$pushData
);
if
(
isset
(
$data
[
'push_set'
])){
$res
=
$this
->
saveInfo
(
$data
,
$memberId
);
return
$res
;
}
}
public
function
validPassword
(
$where
){
if
(
!
\Our\Validate
::
checkPassword
(
$where
[
'password'
]))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
passwordLimit
);
}
}
public
function
getAll
(
$where
=
array
()){
$this
->
setDb
(
$this
->
dbName
);
if
(
$where
){
$where
=
$this
->
db
->
getSqlWhereByArray
(
$where
);
}
if
(
$where
){
$res
=
$this
->
db
->
from
(
$this
->
_tableName
)
->
where
(
$where
)
->
fetchAll
();
}
else
{
$res
=
$this
->
db
->
from
(
$this
->
_tableName
)
->
fetchAll
();
}
$resArray
=
array
();
foreach
(
$res
as
$val
){
$resArray
[
$val
[
'member_id'
]]
=
$val
;
}
return
$resArray
;
}
}
<?php
namespace
DAO
;
use
Error\CodeConfigModel
;
use
Error\ErrorModel
;
use
Our\Common
;
use
Our\ImageConst
;
use
Our\Log
;
use
Our\NameConst
;
use
Our\ApiConst
;
use
Our\Validate
;
/**
* 用户数据层
*/
class
MemberModel
extends
\DAO\AbstractModel
{
private
$memberMysql
;
protected
$_tableName
=
'han_member'
;
//有效用户返回数据
private
$availMemberColumn
=
array
(
'member_id'
,
'member_name'
,
'member_truename'
,
'member_avatar'
,
'member_sex'
,
'member_birthday'
,
'member_mobile'
,
'member_mobile_bind'
,
'member_qq'
,
'member_qqopenid'
,
'member_qqinfo'
,
'member_wxinfo'
,
'member_wxopenid'
,
'member_sinaopenid'
,
'member_sinainfo'
,
'member_points'
,
'member_state'
,
'member_quicklink'
,
'member_exppoints'
,
'store_id'
,
'iswx'
,
'agree_flag'
,
'seller_id'
,
'diliveryman_id'
,
'member_tag_ids'
,
'member_group_ids'
,
'is_teacher'
,
'member_email'
,
'member_email_bind'
,
'is_wxsend'
);
//有效用户返回数据
private
$memberColumn
=
array
(
'member_id'
,
'member_name'
,
'member_truename'
,
'member_avatar'
,
'member_sex'
,
'member_birthday'
,
'member_mobile'
,
'member_mobile_bind'
,
'member_qq'
,
'member_qqopenid'
,
'member_qqinfo'
,
'member_wxinfo'
,
'member_wxopenid'
,
'member_sinaopenid'
,
'member_sinainfo'
,
'member_points'
,
'member_state'
,
'member_quicklink'
,
'member_exppoints'
,
'store_id'
,
'iswx'
,
'agree_flag'
,
'seller_id'
,
'diliveryman_id'
,
'member_tag_ids'
,
'member_group_ids'
,
'is_teacher'
,
'member_email'
,
'member_email_bind'
,
'is_wxsend'
,
'member_state'
);
public
function
init
()
{
$this
->
memberMysql
=
\Mysql\MemberModel
::
getInstance
();
}
/**
* 获取会员头像
* @param $memberId 对应会员ID
* @param $memberAvatar 会员对应member_avatar字段
* @return string
*/
public
function
getMemberAvatarUrl
(
$memberId
,
$memberAvatar
)
{
$filename
=
\Our\ImageConst
::
defaultMemberAvatarName
;
if
(
$memberAvatar
)
{
if
(
strpos
(
$memberAvatar
,
\Our\NameConst
::
http
)
===
0
)
{
return
$memberAvatar
;
}
else
{
$filename
=
$memberAvatar
;
}
//$filename = \Our\ImageConst::memberAvatarPrefix . $memberId;
}
return
\Our\Common
::
getStaticFile
(
$filename
,
\Our\ImageConst
::
memberAvatar
);
}
public
function
getMemberAvatar
(
$memberId
){
$basePath
=
\Bootstrap
::
getUrlIniConfig
(
'source'
);
$memberPath
=
ImageConst
::
memberAvatar
;
$fileName
=
Common
::
format
(
ImageConst
::
memberAvatarPrefix
.
"
{
0
}
"
.
'.jpg'
,
$memberId
);
$file
=
$basePath
.
$memberPath
.
$fileName
;
if
(
file_exists
(
$file
)){
if
(
$fileName
==
'member_avatar_26.jpg'
){
Log
::
getInstance
()
->
write
(
$file
.
'1'
,
"/data/log/test"
);
}
$avatar
=
\Our\Common
::
getStaticFile
(
$fileName
,
\Our\ImageConst
::
memberAvatar
);
}
else
{
if
(
$fileName
==
'member_avatar_26.jpg'
){
Log
::
getInstance
()
->
write
(
$file
.
'2'
,
"/data/log/test"
);
}
$memerAvatar
=
$this
->
getInfo
(
$memberId
,
'member_avatar'
);
$avatar
=
$this
->
getMemberAvatarUrl
(
$memberId
,
$memerAvatar
);
}
return
$avatar
;
}
//原生方法
public
function
query
()
{
$mysql
=
\Mysql\Slave\MemberModel
::
getInstance
();
$res
=
$mysql
->
query
(
"select * from han_member"
);
echo
json_encode
(
$res
);
exit
;
}
//对主库进行操作
public
function
update
(
$sql
)
{
$mysql
=
\Mysql\UserModel
::
getInstance
();
$res
=
$mysql
->
excute
(
$sql
);
return
$res
;
}
public
function
getOneByMobileAndPassword
(
$mobile
,
$password
)
{
$this
->
setDb
(
\Our\DbNameConst
::
masterDBConnectName
);
$where
[
NameConst
::
memberMobile
]
=
$mobile
;
$addKey
=
Common
::
getConfig
(
'password.key'
);
if
(
!
empty
(
$addKey
)){
$where
=
''
;
$where
=
Common
::
format
(
"(member_mobile = '
{
0
}
') AND (member_passwd = MD5(CONCAT(member_time,'
{
1}','{2
}
')))"
,
$mobile
,
$password
,
$addKey
);
// $where[NameConst::memberPasswd] = Common::format("MD5(CONCAT(member_time,member_passwd,'{0}'))",$addKey);
}
else
{
$where
[
NameConst
::
memberPasswd
]
=
md5
(
$password
);
}
$result
=
$this
->
db
->
select
(
$this
->
memberColumn
)
->
from
(
$this
->
_tableName
)
->
where
(
$where
)
->
fetchOne
();
if
(
$result
)
{
$memberAvatarUrl
=
$this
->
getMemberAvatarUrl
(
$result
[
'member_id'
],
$result
[
'member_avatar'
]);
$result
[
'memberAvatarUrl'
]
=
$memberAvatarUrl
;
}
return
$result
;
}
public
function
saveInfo
(
$data
,
$memberId
)
{
$this
->
setDb
(
\Our\DbNameConst
::
masterDBConnectName
);
$result
=
$this
->
db
->
update
(
$this
->
_tableName
)
->
rows
(
$data
)
->
where
(
array
(
'member_id'
=>
$memberId
))
->
execute
();
if
(
$result
!==
false
)
{
$memberDb0Redis
=
\Redis\Db0\MemberRedisModel
::
getInstance
();
$member
=
$data
;
if
(
isset
(
$member
[
'member_avatar'
])
&&
$member
[
'member_avatar'
])
{
$memberAvatarUrl
=
$this
->
getMemberAvatarUrl
(
$memberId
,
$member
[
'member_avatar'
]);
$member
[
'memberAvatarUrl'
]
=
$memberAvatarUrl
;
}
if
(
isset
(
$member
[
'member_passwd'
])
&&
$member
[
'member_passwd'
]){
unset
(
$member
[
'member_passwd'
]);
}
$memberDb0Redis
->
tableHMSet
(
$memberId
,
$member
);
}
return
$result
;
}
public
function
getWxUserToken
(
$memberId
){
$memberDb0Redis
=
\Redis\Db0\MemberRedisModel
::
getInstance
();
$member
=
$memberDb0Redis
->
tableHGAll
(
$memberId
);
$memberDb0Redis
->
tableExpire
(
$memberId
,
ApiConst
::
tenDaySecond
);
if
(
isset
(
$member
[
'wxUserToken'
])
&&
$member
[
'wxUserToken'
]){
return
$member
[
'wxUserToken'
];
}
return
\Our\NameConst
::
emptyString
;
}
public
function
saveWxUserToken
(
$key
,
$memberId
){
$member
=
$this
->
getInfo
(
$memberId
);
$memberDb0Redis
=
\Redis\Db0\MemberRedisModel
::
getInstance
();
$memberDb0Redis
->
tableHMSet
(
$memberId
,
array
(
'wxUserToken'
=>
$key
));
}
/**
* 保存用户信息
*/
public
function
addInfo
(
$data
)
{
// $this->setDb(\Our\DbNameConst::masterDBConnectName);
// $result = $this->db->insert($this->_tableName)->rows($data)->execute();
$result
=
$this
->
add
(
$data
);
if
(
$result
)
{
$memberDb0Redis
=
\Redis\Db0\MemberRedisModel
::
getInstance
();
$memberAvatar
=
''
;
if
(
isset
(
$data
[
'member_avatar'
]))
{
$memberAvatar
=
$data
[
'member_avatar'
];
}
$memberAvatarUrl
=
$this
->
getMemberAvatarUrl
(
$result
,
$memberAvatar
);
$data
[
'memberAvatarUrl'
]
=
$memberAvatarUrl
;
$data
[
'member_id'
]
=
$result
;
$memberDb0Redis
->
tableHMSet
(
$result
,
$data
);
return
$this
->
db
->
getInsertId
();
}
return
false
;
}
/**
* 保存用户信息
*/
public
function
add
(
$data
)
{
$this
->
setDb
(
\Our\DbNameConst
::
masterDBConnectName
);
$result
=
$this
->
db
->
insert
(
$this
->
_tableName
)
->
rows
(
$data
)
->
execute
();
return
$result
;
}
/**
* 类实例
*
* @var \DAO\UserModel
*/
private
static
$_instance
=
null
;
public
function
getInfo
(
$memberId
,
$field
=
false
)
{
$memberDb0Redis
=
\Redis\Db0\MemberRedisModel
::
getInstance
();
if
(
$field
)
{
$memberField
=
$memberDb0Redis
->
tableHGet
(
$memberId
,
$field
);
if
(
!
empty
(
$memberField
))
{
return
$memberField
;
}
else
{
$one
=
$this
->
getOneByMemberId
(
$memberId
,
$field
);
return
$one
[
$field
];
}
}
else
{
$member
=
$memberDb0Redis
->
tableHGAll
(
$memberId
);
$memberDb0Redis
->
tableExpire
(
$memberId
,
ApiConst
::
tenDaySecond
);
if
(
!
empty
(
$member
))
{
$return
=
array
(
'memberId'
=>
(
int
)
$member
[
'member_id'
],
'memberName'
=>
$member
[
'member_name'
],
'memberTrueName'
=>
$member
[
'member_truename'
],
'memberAvatar'
=>
$member
[
'member_avatar'
],
'memberSex'
=>
(
int
)
$member
[
'member_sex'
],
'memberBirthday'
=>
$member
[
'member_birthday'
],
'memberEmail'
=>
isset
(
$member
[
'member_email'
])
?
$member
[
'member_email'
]
:
''
,
'memberEmailBind'
=>
isset
(
$member
[
'member_email_bind'
])
?
(
int
)
$member
[
'member_email_bind'
]
:
ApiConst
::
zero
,
'memberMobile'
=>
$member
[
'member_mobile'
],
'memberMobileBind'
=>
(
int
)
$member
[
'member_mobile_bind'
],
'memberWxinfo'
=>
isset
(
$member
[
'member_wxinfo'
])
&&
$member
[
'member_wxinfo'
]
?
unserialize
(
$member
[
'member_wxinfo'
])
:
new
\stdClass
(),
'memberWxopenid'
=>
$member
[
'member_wxopenid'
],
'sellerId'
=>
(
int
)
$member
[
'seller_id'
],
'diliverymanId'
=>
(
int
)
$member
[
'diliveryman_id'
],
'storeId'
=>
(
int
)
$member
[
'store_id'
],
'memberAvatarUrl'
=>
$member
[
'memberAvatarUrl'
],
'isWxsend'
=>
$member
[
'is_wxsend'
],
'pushSet'
=>
$member
[
'push_set'
]
);
}
else
{
$member
=
$this
->
getOneByMemberId
(
$memberId
,
'*'
);
$return
=
array
(
'memberId'
=>
$member
[
'member_id'
],
'memberName'
=>
$member
[
'member_name'
],
'memberTrueName'
=>
$member
[
'member_truename'
],
'memberAvatar'
=>
$member
[
'member_avatar'
],
'memberSex'
=>
$member
[
'member_sex'
],
'memberBirthday'
=>
$member
[
'member_birthday'
],
'memberEmail'
=>
isset
(
$member
[
'member_email'
])
?
$member
[
'member_email'
]
:
''
,
'memberEmailBind'
=>
isset
(
$member
[
'member_email_bind'
])
?
$member
[
'member_email_bind'
]
:
ApiConst
::
zero
,
'memberMobile'
=>
$member
[
'member_mobile'
],
'memberMobileBind'
=>
$member
[
'member_mobile_bind'
],
'memberWxinfo'
=>
isset
(
$member
[
'member_wxinfo'
])
?
unserialize
(
$member
[
'member_wxinfo'
])
:
new
\stdClass
(),
'memberWxopenid'
=>
$member
[
'member_wxopenid'
],
'sellerId'
=>
$member
[
'seller_id'
],
'diliverymanId'
=>
$member
[
'diliveryman_id'
],
'storeId'
=>
$member
[
'store_id'
],
'memberAvatarUrl'
=>
$member
[
'memberAvatarUrl'
],
'isWxsend'
=>
$member
[
'is_wxsend'
],
'pushSet'
=>
$member
[
'push_set'
],
);
foreach
(
$member
as
$key
=>
$value
)
{
if
(
empty
(
$value
)
||
is_null
(
$value
))
{
$member
[
$key
]
=
ApiConst
::
zero
;
}
}
foreach
(
$return
as
$key
=>
$value
)
{
if
(
empty
(
$value
)
||
is_null
(
$value
))
{
$return
[
$key
]
=
ApiConst
::
zero
;
}
}
$memberDb0Redis
->
tableHMSet
(
$memberId
,
$member
);
}
return
$return
;
}
}
public
function
updateInfo
(
$data
,
$where
)
{
$this
->
setDb
(
\Our\DbNameConst
::
masterDBConnectName
);
$result
=
$this
->
db
->
update
(
$this
->
_tableName
)
->
rows
(
$data
)
->
where
(
$where
)
->
execute
();
return
$result
;
}
public
function
getOneByWhereWithField
(
$where
,
$field
)
{
$this
->
setDb
(
$this
->
dbName
);
$member
=
$this
->
db
->
from
(
$this
->
_tableName
)
->
select
(
$field
)
->
where
(
$where
)
->
fetchOne
();
return
$member
;
}
public
function
getOneByMemberId
(
$memberId
,
$field
=
'*'
)
{
$this
->
setDb
(
$this
->
dbName
);
$where
[
'member_id'
]
=
$memberId
;
$member
=
$this
->
getOneByWhereWithField
(
$where
,
$field
);;
if
(
isset
(
$member
[
'member_avatar'
])){
$memberAvatarUrl
=
$this
->
getMemberAvatarUrl
(
$memberId
,
$member
[
'member_avatar'
]);
$member
[
'memberAvatarUrl'
]
=
$memberAvatarUrl
;
}
return
$member
;
}
/**
* 获取类实例
*
* @return \DAO\UserModel
*/
public
static
function
getInstance
(
$dbName
=
\Our\DbNameConst
::
salveDBConnectName
)
{
if
(
!
(
self
::
$_instance
instanceof
self
))
{
self
::
$_instance
=
new
self
();
}
return
self
::
$_instance
;
}
/**
* 验证会员信息
* @param $where
* @return array
* @throws \Exception
*/
public
function
getValidMember
(
$where
)
{
if
(
$where
[
'memberName'
])
{
if
(
!
\Our\Validate
::
checkLengthRange
(
$where
[
'memberName'
],
1
,
25
))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
memberNameLengthLimit
);
}
}
/*if ($where['memberBirthday']) {
if (!\Our\Validate::checkDateStr($where['memberBirthday'])) {
\Error\ErrorModel::throwException(\Error\CodeConfigModel::memberBirthdayError);
}
if (strtotime($where['memberBirthday']) > strtotime(date('Y-m-d'))) {
\Error\ErrorModel::throwException(\Error\CodeConfigModel::illegalMemberBirthday);
}
}*/
if
(
!
(
$where
[
'memberSex'
]
&&
in_array
(
$where
[
'memberSex'
],
array
(
\Our\ApiConst
::
woman
,
\Our\ApiConst
::
man
))))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
wrongMemberSex
);
}
$memberInfo
[
'memberName'
]
=
$where
[
'memberName'
];
$memberInfo
[
'memberSex'
]
=
$where
[
'memberSex'
];
$memberInfo
=
\Our\Common
::
convertHump
(
$memberInfo
);
return
$memberInfo
;
}
public
function
validMemberNameAndAvatar
(
$where
){
if
(
!
$where
[
'avatar'
]){
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
emptyUserAvatar
);
}
if
(
!
$where
[
'nickname'
]){
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
emptyUserNickname
);
}
return
true
;
}
public
function
getByMemberMobile
(
$mobile
){
$this
->
setDb
(
$this
->
dbName
);
$where
[
'member_mobile'
]
=
$mobile
;
$result
=
$this
->
getOneByWhereWithField
(
$where
,
"member_id as memberId,member_name as memberName,member_mobile as memberMobile"
);
return
$result
;
}
public
function
validRegisterInfo
(
$where
)
{
if
(
!
\Our\Common
::
checkMobilePhone
(
$where
[
'mobile'
]))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
wrongMobileFormat
);
}
if
(
!
$where
[
'password'
])
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
emptyPassword
);
}
if
(
!
\Our\Validate
::
checkPassword
(
$where
[
'password'
]))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
passwordLimit
);
}
if
(
!
$where
[
'deviceType'
])
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
emptyDeviceType
);
}
if
(
!
$where
[
'deviceUniqueCode'
])
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
emptyDeviceUniqueCode
);
}
return
true
;
}
public
function
checkChangedInfo
(
$where
)
{
$this
->
checkRegisterMobile
(
$where
);
if
(
!
\Our\Validate
::
checkPassword
(
$where
[
'password'
]))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
passwordLimit
);
}
}
/**
* 验证注册手机号码
*/
public
function
checkRegisterMobile
(
$where
)
{
$mobile
=
$where
[
'mobile'
];
if
(
!
\Our\Common
::
checkMobilePhone
(
$mobile
))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
wrongMobileFormat
);
}
$member
=
$this
->
getOneByWhereWithField
(
array
(
'member_mobile'
=>
$mobile
),
'member_id'
);
if
(
$member
)
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
registerMobileExist
);
}
return
true
;
}
/**
* 验证手机是否存在有效用户
* @param $where
*/
public
function
checkLoginMobile
(
$where
)
{
$mobile
=
$where
[
'mobile'
];
if
(
!
\Our\Common
::
checkMobilePhone
(
$mobile
))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
wrongMobileFormat
);
}
$member
=
$this
->
getOneByWhereWithField
(
array
(
'member_mobile'
=>
$mobile
,
'member_state'
=>
\Our\ApiConst
::
one
),
'member_id'
);
if
(
!
$member
)
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
memberMobileExist
);
}
return
true
;
}
/**
* 微信用户绑定发送验证码时验证表单
* @param $where
* @param $memberId
* @throws \Error\OurExceptionModel
* @throws \Exception
*/
public
function
checkWxBindMobileForSms
(
$where
,
$memberId
){
if
(
!
$memberId
){
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
wxMemberBindMobileSendCode
);
}
$member
=
$this
->
getInfo
(
$memberId
);
if
((
$member
[
'memberMobile'
]
&&
$member
[
'memberMobileBind'
])){
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
wxMemberHasBindMobile
);
}
return
true
;
}
public
function
checkWxBindMobileCommon
(
$where
){
$mobile
=
$where
[
'mobile'
];
if
(
!
\Our\Common
::
checkMobilePhone
(
$mobile
))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
wrongMobileFormat
);
}
$member
=
$this
->
getOneByWhereWithField
(
array
(
'member_mobile'
=>
$mobile
,
'member_state'
=>
\Our\ApiConst
::
one
),
'member_id'
);
if
(
$member
)
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
mobileExistMember
);
}
}
public
function
checkSaleMobile
(
$where
,
$memberId
)
{
if
(
!
$memberId
){
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
saleNotLogin
);
}
$member_mobile
=
$this
->
getInfo
(
$memberId
,
'member_mobile'
);
if
(
$member_mobile
!=
$where
[
'mobile'
])
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
salePhoneError
);
}
// $mobile = $where['mobile'];
// if (!\Our\Common::checkMobilePhone($mobile)) {
// \Error\ErrorModel::throwException(\Error\CodeConfigModel::wrongMobileFormat);
// }
// $member = $this->getOneByWhereWithField(array('member_mobile' => $mobile, 'member_state' => \Our\ApiConst::one), 'member_id');
// if ($member) {
// \Error\ErrorModel::throwException(\Error\CodeConfigModel::mobileExistMember);
// }
}
/**
* 微信用户更改手机号码提交表单时验证
* @param $where
* @param $memberId
* @throws \Error\OurExceptionModel
* @throws \Exception
*/
public
function
checkWxBindMobile
(
$where
){
$this
->
checkWxBindMobileCommon
(
$where
);
if
(
!
\Our\Validate
::
checkPassword
(
$where
[
'password'
]))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
passwordLimit
);
}
}
public
function
checkPassword
(
$data
)
{
if
(
!
(
$data
[
'password'
]
&&
$data
[
'rePassword'
]))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
emptyPasswordAndRepassword
);
}
if
(
$data
[
'password'
]
!=
$data
[
'rePassword'
])
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
differentPasswordAndRepassword
);
}
if
(
!
\Our\Validate
::
checkPassword
(
$data
[
'password'
]))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
passwordLimit
);
}
}
/**
* 更换密码时验证密码和旧密码
* @param $data
* @param $memberId
* @throws \Exception
*/
public
function
checkOldPassword
(
$data
,
$memberId
)
{
if
(
!
$data
[
'oldPassword'
])
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
emptyOldPassword
);
}
$memberCurrent
=
$this
->
getOneByWhereWithField
(
array
(
'member_id'
=>
$memberId
),
'member_passwd,member_time'
);
$addKey
=
Common
::
getConfig
(
'password.key'
);
if
(
!
(
$memberCurrent
&&
$memberCurrent
[
'member_passwd'
]
==
md5
(
$memberCurrent
[
'member_time'
]
.
$data
[
'oldPassword'
]
.
$addKey
)))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
worngOldPassword
);
}
$this
->
checkPassword
(
$data
);
}
public
function
checkDelMember
(
$data
)
{
if
(
!
(
APP_ENV
==
'test'
||
APP_ENV
==
'develop'
||
APP_ENV
==
'pre'
))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
noAvailForDelMember
);
}
if
(
!
$data
[
'mobile'
])
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
emptyMobileForDelMember
);
}
}
public
function
getMemberById
(
$memberId
)
{
$member
=
$this
->
getOneByWhereWithField
(
array
(
'member_id'
=>
$memberId
),
$this
->
availMemberColumn
);
foreach
(
$member
as
$key
=>
$value
)
{
if
(
empty
(
$value
)
||
is_null
(
$value
))
{
$member
[
$key
]
=
\Our\ApiConst
::
zero
;
}
}
$memberAvatarUrl
=
$this
->
getMemberAvatarUrl
(
$member
[
'member_id'
],
$member
[
'member_avatar'
]);
$member
[
'memberAvatarUrl'
]
=
$memberAvatarUrl
;
return
$member
;
}
public
function
getMemberForLogin
(
$memberIds
){
$member
=
array
();
$memberCon
[
'member_id'
]
=
array
(
'in'
,
$memberIds
);
$memberCon
[
'member_state'
]
=
\Our\ApiConst
::
one
;
$orders
=
array
(
'member_mobile'
=>
'desc'
,
'member_id'
=>
'desc'
);
$memberList
=
$this
->
getList
(
$memberCon
,
$this
->
availMemberColumn
,
$orders
);
if
(
$memberList
){
$member
=
$memberList
[
0
];
$memberAvatarUrl
=
$this
->
getMemberAvatarUrl
(
$member
[
'member_id'
],
$member
[
'member_avatar'
]);
$member
[
'memberAvatarUrl'
]
=
$memberAvatarUrl
;
}
return
$member
;
}
public
function
del
(
$where
)
{
$this
->
setDb
(
\Our\DbNameConst
::
masterDBConnectName
);
$result
=
$this
->
db
->
delete
(
$this
->
_tableName
)
->
where
(
$where
)
->
execute
();
return
$result
;
}
/**
* 个人中心统计数量更新
* @param $type
* /Our/NameConst
* const waitPay = 'waitPay';//待付款 order_state=10
* const waitShipments = 'waitShipments';//待发货 order_state=20,25
* const waitReceiving = 'waitReceiving';//待收货 order_state=30
* const waitEvaluate = 'waitEvaluate';//待评价 order_state=40 and evaluation_state=0,2
* const refund = 'refund';//退款中 seller_state=1 or (is_platform_in = 1 and platform_state = 0)
* const storeCollection = 'storeCollection';//店铺收藏数量
* const goodsCollection = 'goodsCollection';//商品收藏数量
* const footprint = 'footprint';//足迹数量
* @param $num
*/
public
function
_changeNum
(
$type
,
$memberId
,
$num
=
1
)
{
$memebrCenterDb1Redis
=
\Redis\Db1\MemberCenterRedisModel
::
getInstance
();
if
(
$memebrCenterDb1Redis
->
tableKeyExists
(
$memberId
)
!==
false
)
{
$memebrCenterDb1Redis
->
tableHIncrBy
(
$memberId
,
$type
,
$num
);
}
}
public
function
getList
(
$where
,
$field
=
\Our\NameConst
::
allField
,
$orders
=
array
()){
$this
->
setDb
(
$this
->
dbName
);
if
(
is_array
(
$where
)){
$where
=
$this
->
db
->
getSqlWhereByArray
(
$where
);
}
if
(
$orders
){
foreach
(
$orders
as
$key
=>
$order
){
$this
->
db
->
order
(
$key
,
$order
);
}
}
return
$this
->
db
->
from
(
$this
->
_tableName
)
->
select
(
$field
)
->
where
(
$where
)
->
fetchAll
();
}
public
function
changeNum
(
$memberId
,
$orderState
,
$evaluation_state
=
null
,
$num
=
1
)
{
switch
(
$orderState
)
{
case
ApiConst
::
orderStateWaitPay
:
$type
=
NameConst
::
waitPay
;
break
;
case
ApiConst
::
orderStateWaitSend
:
$type
=
NameConst
::
waitShipments
;
break
;
case
ApiConst
::
orderStateWaitRecieve
:
$type
=
NameConst
::
waitReceiving
;
break
;
case
ApiConst
::
orderStateComplete
:
$type
=
NameConst
::
waitEvaluate
;
break
;
default
:
break
;
}
if
(
$type
)
{
$this
->
_changeNum
(
$type
,
$memberId
,
$num
);
}
}
public
function
getListMemberUrl
(
$list
){
foreach
(
$list
as
&
$li
){
$li
[
'memberAvatar'
]
=
$this
->
getMemberAvatarUrl
(
$li
[
'memberId'
],
$li
[
'memberAvatar'
]);
}
return
$list
;
}
//删除统计缓存
public
function
deleteTotalCache
(
$memberId
,
$type
=
FALSE
){
$memebrCenterDb1Redis
=
\Redis\Db1\MemberCenterRedisModel
::
getInstance
();
if
(
!
empty
(
$type
)){
$memebrCenterDb1Redis
->
tableHDel
(
$memberId
,
$type
);
}
else
{
//$memebrCenterDb1Redis->tableDel($memberId);
$memebrCenterDb1Redis
->
tableHDel
(
$memberId
,
NameConst
::
waitPay
);
$memebrCenterDb1Redis
->
tableHDel
(
$memberId
,
NameConst
::
waitShipments
);
$memebrCenterDb1Redis
->
tableHDel
(
$memberId
,
NameConst
::
waitReceiving
);
$memebrCenterDb1Redis
->
tableHDel
(
$memberId
,
NameConst
::
waitEvaluate
);
$memebrCenterDb1Redis
->
tableHDel
(
$memberId
,
NameConst
::
refund
);
}
}
public
function
fromOrderStateToOrderState
(
$memberId
,
$fromState
,
$toState
)
{
$this
->
changeNum
(
$memberId
,
$fromState
,
null
,
-
1
);
$this
->
changeNum
(
$memberId
,
$toState
,
null
,
1
);
}
public
function
setIsWxsend
(
$memberId
,
$pushData
){
foreach
(
$pushData
as
$key
=>
$val
){
if
(
$key
!=
'timeDiff'
){
if
(
!
in_array
(
$val
,
array
(
ApiConst
::
closeMessage
,
ApiConst
::
openMessae
))){
ErrorModel
::
throwException
(
CodeConfigModel
::
paramsError
);
}
}
}
$data
[
'push_set'
]
=
serialize
(
$pushData
);
if
(
isset
(
$data
[
'push_set'
])){
$res
=
$this
->
saveInfo
(
$data
,
$memberId
);
return
$res
;
}
}
public
function
validPassword
(
$where
){
if
(
!
\Our\Validate
::
checkPassword
(
$where
[
'password'
]))
{
\Error\ErrorModel
::
throwException
(
\Error\CodeConfigModel
::
passwordLimit
);
}
}
public
function
getAll
(
$where
=
array
()){
$this
->
setDb
(
$this
->
dbName
);
if
(
$where
){
$where
=
$this
->
db
->
getSqlWhereByArray
(
$where
);
}
if
(
$where
){
$res
=
$this
->
db
->
from
(
$this
->
_tableName
)
->
where
(
$where
)
->
fetchAll
();
}
else
{
$res
=
$this
->
db
->
from
(
$this
->
_tableName
)
->
fetchAll
();
}
$resArray
=
array
();
foreach
(
$res
as
$val
){
$resArray
[
$val
[
'member_id'
]]
=
$val
;
}
return
$resArray
;
}
}
application/models/DAO/Order/Diliveryman.php
View file @
a8b38774
...
...
@@ -39,21 +39,6 @@ class DiliverymanModel extends \DAO\AbstractModel
}
public
function
getCount
(
$where
,
$isArray
=
true
)
{
$this
->
setDb
();
if
(
!
$isArray
)
{
$str
=
'$count = $this->db->from($this->_tableName)'
;
foreach
(
$where
as
$v
)
{
$str
.=
"->where('
$v
')"
;
}
$str
.=
"->fetchNum();"
;
eval
(
$str
);
return
$count
;
}
return
$this
->
db
->
from
(
$this
->
_tableName
)
->
where
(
$where
)
->
fetchNum
();
}
/**
* 获取单条数据
* @param $where
...
...
@@ -80,6 +65,12 @@ class DiliverymanModel extends \DAO\AbstractModel
$where
[
$this
->
_primaryKey
]
=
$id
;
return
$this
->
find
(
$where
);
}
public
function
getByMobile
(
$mobile
){
$this
->
setDb
(
$this
->
dbName
);
$where
[
'mobile'
]
=
$mobile
;
$result
=
$this
->
find
(
$where
);
return
$result
;
}
public
function
getDeliveryManFields
()
{
return
array
(
...
...
application/models/DAO/Order/Order.php
View file @
a8b38774
...
...
@@ -233,6 +233,11 @@ class OrderModel extends \DAO\AbstractModel
return
$this
->
db
->
update
(
$this
->
_tableName
)
->
where
(
$where
)
->
rows
(
$data
)
->
execute
();
}
public
function
updateByOrderId
(
$data
,
$orderId
){
$where
[
'order_id'
]
=
$orderId
;
$res
=
$this
->
update
(
$where
,
$data
);
return
$res
;
}
public
function
insert
(
$data
)
{
$this
->
setDb
(
\Our\DbNameConst
::
masterDBConnectName
);
...
...
application/models/Error/CodeConfig.php
View file @
a8b38774
...
...
@@ -5,14 +5,15 @@ namespace Error;
/**
* 错误码设置类
*/
class
CodeConfigModel
{
class
CodeConfigModel
{
//通用错误
const
commonError
=
-
1
;
const
paramsError
=
-
2
;
const
commonError
=
-
1
;
const
paramsError
=
-
2
;
//用户登录错误
const
emptyUsername
=
10001
;
const
emptyPassword
=
10002
;
const
errorUsernameOrPassword
=
10003
;
const
emptyUsername
=
10001
;
const
emptyPassword
=
10002
;
const
errorUsernameOrPassword
=
10003
;
const
noLogin
=
10005
;
const
memberNameLengthLimit
=
10004
;
...
...
@@ -59,7 +60,7 @@ class CodeConfigModel {
const
emptyMobile
=
10046
;
const
sameWithOldMobile
=
10047
;
const
changeMobileFailed
=
10048
;
const
wrongTelnumber
=
10049
;
const
wrongTelnumber
=
10049
;
const
memberBirthdayError
=
10050
;
const
wxUserInfoAuthError
=
10051
;
const
emptyWxUserInfoAuth
=
10052
;
...
...
@@ -72,7 +73,7 @@ class CodeConfigModel {
const
memberExistBindingInfo
=
10059
;
const
wrongMemberSex
=
10060
;
const
noAvailForDelMember
=
10061
;
const
emptyMobileForDelMember
=
10062
;
const
emptyMobileForDelMember
=
10062
;
const
emptyMemberForDelMember
=
10063
;
const
deleteMemberFailed
=
10064
;
const
wxMemberHasBindMobile
=
10065
;
...
...
@@ -82,14 +83,14 @@ class CodeConfigModel {
const
emptyEncryptedDataAndVi
=
10069
;
const
getUnionidFailed
=
10070
;
const
saveMemberMapppingFailed
=
10071
;
const
emptyWxSetting
=
10072
;
const
getWxAccessTokenFail
=
10073
;
const
emptyWxSetting
=
10072
;
const
getWxAccessTokenFail
=
10073
;
const
wrongMappingDataForBindMembmer
=
10074
;
const
otherMemberOpenIdBindForMember
=
10075
;
const
updateMobileMembmerFailed
=
10076
;
const
updateMobileMembmerMappingFailed
=
10077
;
const
currentMobileHasBeenBind
=
10078
;
const
otherDriverLogin
=
10105
;
const
otherDriverLogin
=
10105
;
const
emptyLog
=
10106
;
const
writeLogFailed
=
10107
;
const
wrongTimeForReadLog
=
10108
;
...
...
@@ -101,17 +102,17 @@ class CodeConfigModel {
const
unavailMemberState
=
10114
;
//访问错误
const
illegalAccess
=
200001
;
const
illegalAccess
=
200001
;
const
maxGetAccess
=
200002
;
const
isLogin
=
200003
;
const
signWrong
=
200004
;
const
authError
=
200005
;
const
authExpire
=
200006
;
const
maxGetAccess
=
200002
;
const
isLogin
=
200003
;
const
signWrong
=
200004
;
const
authError
=
200005
;
const
authExpire
=
200006
;
//商品
const
emptyCommonId
=
20001
;
const
goodsNotExist
=
20002
;
const
groupNotExist
=
20003
;
const
emptyCommonId
=
20001
;
const
goodsNotExist
=
20002
;
const
groupNotExist
=
20003
;
//店铺相关错误代码
...
...
@@ -123,7 +124,7 @@ class CodeConfigModel {
const
storeNotExistOrClose
=
40006
;
const
emptyStoreId
=
40007
;
const
saveReportError
=
40008
;
const
stroeReceiveError
=
40009
;
const
stroeReceiveError
=
40009
;
//购物车
const
wrongCartType
=
50001
;
...
...
@@ -162,7 +163,7 @@ class CodeConfigModel {
const
wrongBundlingForBuyNow
=
50034
;
const
wrongGoodsForBuyNow
=
50035
;
const
offlineGoodsListOrNotExist
=
50036
;
const
goodsListNoStorage
=
50037
;
const
goodsListNoStorage
=
50037
;
const
emptyPBundlingdForOrder
=
50038
;
const
pBundlingOfflineForOrder
=
50039
;
const
pBundlingNoStorageForOrder
=
50040
;
...
...
@@ -176,42 +177,42 @@ class CodeConfigModel {
const
orderNotExist
=
30001
;
const
orderError
=
30002
;
const
refundRefuseByStore
=
30003
;
const
emptyDescCredit
=
30012
;
const
emptyDeliveryCredit
=
30013
;
const
emptyServiceCredit
=
30014
;
const
emptyScores
=
30016
;
const
emptyGoodsId
=
30017
;
const
notAllowCancel
=
30019
;
const
notAllowComplete
=
30020
;
const
refundSuccess
=
30021
;
const
returnErrorAfterPay
=
30022
;
const
returnBeyondTimeError
=
30023
;
const
applyError
=
30024
;
const
notReturnAgree
=
30025
;
const
isNotReturn
=
30026
;
const
isNotExpressType
=
30027
;
const
notExistRefund
=
30028
;
const
sendRefundShippingFail
=
30029
;
const
alreadySendRefundShipping
=
30030
;
const
buyerCancelError
=
30031
;
const
refundCancelError
=
30032
;
const
storeCancelError
=
30033
;
const
systemCancelError
=
30034
;
const
systemReceivePayError
=
30035
;
const
complainError
=
30036
;
const
paymentError
=
30037
;
const
modifyPriceError
=
30038
;
const
spayPriceError
=
30039
;
const
sendError
=
30040
;
const
receiveError
=
30041
;
const
evaluationError
=
30042
;
const
lockError
=
30043
;
const
deliverError
=
30044
;
const
deleteError
=
30045
;
const
restoreError
=
30046
;
const
shareError
=
30047
;
const
orderDeleteError
=
30048
;
const
emptyDescCredit
=
30012
;
const
emptyDeliveryCredit
=
30013
;
const
emptyServiceCredit
=
30014
;
const
emptyScores
=
30016
;
const
emptyGoodsId
=
30017
;
const
notAllowCancel
=
30019
;
const
notAllowComplete
=
30020
;
const
refundSuccess
=
30021
;
const
returnErrorAfterPay
=
30022
;
const
returnBeyondTimeError
=
30023
;
const
applyError
=
30024
;
const
notReturnAgree
=
30025
;
const
isNotReturn
=
30026
;
const
isNotExpressType
=
30027
;
const
notExistRefund
=
30028
;
const
sendRefundShippingFail
=
30029
;
const
alreadySendRefundShipping
=
30030
;
const
buyerCancelError
=
30031
;
const
refundCancelError
=
30032
;
const
storeCancelError
=
30033
;
const
systemCancelError
=
30034
;
const
systemReceivePayError
=
30035
;
const
complainError
=
30036
;
const
paymentError
=
30037
;
const
modifyPriceError
=
30038
;
const
spayPriceError
=
30039
;
const
sendError
=
30040
;
const
receiveError
=
30041
;
const
evaluationError
=
30042
;
const
lockError
=
30043
;
const
deliverError
=
30044
;
const
deleteError
=
30045
;
const
restoreError
=
30046
;
const
shareError
=
30047
;
const
orderDeleteError
=
30048
;
const
noAddressForOrder
=
30049
;
const
emptyCartIdsForOrder
=
30050
;
const
emptyParamForOrder
=
30051
;
...
...
@@ -255,7 +256,7 @@ class CodeConfigModel {
const
emptyPaySnForOrder
=
30089
;
const
wrongPaySnForOrder
=
30090
;
const
updateOrderPayedStatusFailed
=
30091
;
const
wrongOrderPayForOrder
=
30092
;
const
wrongOrderPayForOrder
=
30092
;
const
emptyOrderForPay
=
30093
;
const
emptyOrderIdForPay
=
30094
;
const
noRightForOrder
=
30095
;
...
...
@@ -273,16 +274,17 @@ class CodeConfigModel {
const
goodsStorageToDBFailedForOrder
=
30107
;
const
blGoodsStorageToCacheFailedForOrder
=
30108
;
const
goodsStorageToCacheFailedForOrder
=
30109
;
const
notExistOrderGoods
=
300110
;
const
notExsitDeliver
=
300111
;
const
notExsitOrder
=
300112
;
const
alreadyExsitRefundGoods
=
300113
;
const
notAllowDelete
=
300114
;
const
notExistOrderGoods
=
300110
;
const
notExsitDeliver
=
300111
;
const
notExsitOrder
=
300112
;
const
alreadyExsitRefundGoods
=
300113
;
const
notAllowDelete
=
300114
;
const
noExpressDeliveryForOrder1
=
30115
;
const
goodsNoStoreForCartOrOrder1
=
30116
;
const
platFormAreadyIn
=
300117
;
const
platFormAreadyIn
=
300117
;
const
confirmReceiveError
=
300118
;
const
alreadyExsitDeliveryMan
=
300119
;
const
noEnoughStorageForBundlingGoods
=
30118
;
const
noOrderWaitToPay
=
30119
;
const
wrongEvaluation
=
30120
;
...
...
@@ -320,7 +322,7 @@ class CodeConfigModel {
const
codeIsSixNumberString
=
90015
;
const
codeIsSixNumberString1
=
90016
;
const
setMessageFail
=
90017
;
const
setMessageFail
=
90017
;
//销售员
const
emptySaleGoodsId
=
100001
;
const
emptySaleGoods
=
100002
;
...
...
@@ -376,16 +378,16 @@ class CodeConfigModel {
const
wrongCityCode
=
140023
;
//消息,推送等
const
removeMessage
=
150001
;
const
pushConnectError
=
152001
;
const
pushIsNotOpen
=
152002
;
const
sendMessageFail
=
152003
;
const
sendLimitError
=
152004
;
const
removeMessage
=
150001
;
const
pushConnectError
=
152001
;
const
pushIsNotOpen
=
152002
;
const
sendMessageFail
=
152003
;
const
sendLimitError
=
152004
;
const
updateReadedError
=
152005
;
const
noExistMessage
=
152006
;
const
noExistButton
=
152007
;
const
isClicked
=
152008
;
const
updateReadedError
=
152005
;
const
noExistMessage
=
152006
;
const
noExistButton
=
152007
;
const
isClicked
=
152008
;
//广告位
...
...
@@ -397,46 +399,33 @@ class CodeConfigModel {
const
storeEvaNotExist
=
170001
;
const
ViewTimeNotExist
=
170002
;
const
cancleCollectionGoods
=
170003
;
const
cancleCollectionStore
=
170004
;
const
cancleCollectionStore
=
170004
;
//底层异常
const
elasticsError
=
900001
;
const
elasticsError
=
900001
;
//分享错误码
const
shareGrowImageError
=
180001
;
const
shareGrowImageError
=
180001
;
/**
* 获取错误码配置
*/
public
static
function
getCodeConfig
()
{
public
static
function
getCodeConfig
()
{
return
array
(
self
::
commonError
=>
"请求失败"
,
self
::
paramsError
=>
"参数有误"
,
self
::
paramsError
=>
"参数有误"
,
self
::
emptyUsername
=>
"用户名不能为空"
,
self
::
emptyPassword
=>
"密码不能为空"
,
self
::
errorUsernameOrPassword
=>
'用户名或密码错误'
,
self
::
illegalAccess
=>
"非法访问,还未授权,或者授权过期"
,
self
::
wrongTelnumber
=>
"请输入正确的手机号码"
,
self
::
maxGetAccess
=>
'今天授权次数已经用完'
,
self
::
isLogin
=>
'你已经登录'
,
self
::
emptyPassword
=>
"密码不能为空"
,
self
::
errorUsernameOrPassword
=>
'用户名或密码错误'
,
self
::
illegalAccess
=>
"非法访问,还未授权,或者授权过期"
,
self
::
wrongTelnumber
=>
"请输入正确的手机号码"
,
self
::
maxGetAccess
=>
'今天授权次数已经用完'
,
self
::
isLogin
=>
'你已经登录'
,
self
::
signWrong
=>
'签名错误'
,
self
::
noLogin
=>
'您还没有登录'
,
self
::
noLogin
=>
'您还没有登录'
,
self
::
emptyMemberName
=>
'昵称不能为空'
,
self
::
memberNameLengthLimit
=>
'昵称长度必须在1到24个字符之间'
,
self
::
memberBirthdayError
=>
'生日格式错误'
,
...
...
@@ -488,7 +477,7 @@ class CodeConfigModel {
self
::
wxAuthInfoLoginFailed
=>
'微信授权登录失败'
,
self
::
emptyOrWrongAuthUserType
=>
'授权用户类型不能为空或者类型错误'
,
self
::
registerMemberFailed
=>
'注册账号失败'
,
self
::
bindingUserNotExist
=>
'绑定的用户不存在'
,
self
::
bindingUserNotExist
=>
'绑定的用户不存在'
,
self
::
emptyMobileForLogin
=>
'登录时手机号码不能为空'
,
self
::
memberExistBindingInfo
=>
'您已经绑定过用户信息,如需绑定,请先解绑'
,
self
::
wrongMemberSex
=>
'会员性别错误'
,
...
...
@@ -507,24 +496,24 @@ class CodeConfigModel {
self
::
uploadWxMemberAvatarFailed
=>
'微信上传用户头像失败'
,
self
::
unavailMemberState
=>
'您的账号已被禁用'
,
//商品相关
self
::
emptyCommonId
=>
'商品主键不能为空'
,
self
::
goodsNotExist
=>
'商品不存在'
,
self
::
groupNotExist
=>
'组合活动不存在或已下架'
,
self
::
emptyCommonId
=>
'商品主键不能为空'
,
self
::
goodsNotExist
=>
'商品不存在'
,
self
::
groupNotExist
=>
'组合活动不存在或已下架'
,
//订单相关错误
self
::
orderNotExist
=>
'订单不存在'
,
self
::
orderError
=>
'订单信息错误'
,
self
::
refundRefuseByStore
=>
'商家不同意退款,如有疑问请联系客服'
,
self
::
returnErrorAfterPay
=>
'货到付款订单在没确认收货前不能退款退货'
,
self
::
returnBeyondTimeError
=>
'收货超时订单不能退款'
,
self
::
returnErrorAfterPay
=>
'货到付款订单在没确认收货前不能退款退货'
,
self
::
returnBeyondTimeError
=>
'收货超时订单不能退款'
,
//店铺相关错误
self
::
illegalFavStore
=>
'不能关注自己的店铺'
,
self
::
emptyStore
=>
'店铺不存在或者已关闭'
,
self
::
emptyReportStoreDesc
=>
'描述内容不能为空'
,
self
::
emptyReportStoreType
=>
'举报类型不能为空'
,
self
::
illegalFavStore
=>
'不能关注自己的店铺'
,
self
::
emptyStore
=>
'店铺不存在或者已关闭'
,
self
::
emptyReportStoreDesc
=>
'描述内容不能为空'
,
self
::
emptyReportStoreType
=>
'举报类型不能为空'
,
self
::
emptyStores
=>
'没找到相关店铺'
,
self
::
stroeReceiveError
=>
'店铺接单错误'
,
self
::
stroeReceiveError
=>
'店铺接单错误'
,
//购物车相关
self
::
wrongCartType
=>
'加入购物车类型不能为空'
,
...
...
@@ -556,7 +545,7 @@ class CodeConfigModel {
self
::
moveToFavoritesFailed
=>
'移入收藏夹添加数据失败'
,
self
::
moveToFavoritesDelCartFailed
=>
'移入收藏夹删除购物车失败'
,
self
::
emptyCartIdsForCheckout
=>
'购物车下单时购物车ID不能为空'
,
self
::
storeNoDeliveryTypeForBuy
=>
'店铺没有设置配送方式,不能下单'
,
self
::
storeNoDeliveryTypeForBuy
=>
'店铺没有设置配送方式,不能下单'
,
self
::
storeNoPaywayForBuy
=>
'店铺没有设置支付方式,不能下单'
,
self
::
emptyGoodsIdOrBlIdForBuyNow
=>
'立即购买时商品ID或者组合销售ID不能都为空'
,
self
::
emptyGoodsNumForBuyNow
=>
'立即购买时商品ID或者组合销售ID不能都为空'
,
...
...
@@ -572,12 +561,12 @@ class CodeConfigModel {
self
::
wrongAddCartForSelfStore
=>
'店主不能添加自己店铺的商品到购物车'
,
self
::
pbundingGoodsCannotMoveToFavouites
=>
'组合商品暂不支持移入收藏夹'
,
self
::
addressNotExist
=>
'地址不存在'
,
self
::
emptyAddressId
=>
'地址主键参数不能为空'
,
self
::
saveAddressFailed
=>
'地址保存失败'
,
self
::
addressNotExist
=>
'地址不存在'
,
self
::
emptyAddressId
=>
'地址主键参数不能为空'
,
self
::
saveAddressFailed
=>
'地址保存失败'
,
self
::
currLatLngNoAddress
=>
'当前经纬度不存在收货地址'
,
self
::
emptyParamForMyAddress
=>
'获取地址时参数不能为空'
,
self
::
delAddressFailed
=>
'地址删除失败'
,
self
::
delAddressFailed
=>
'地址删除失败'
,
self
::
emptyAddressMobile
=>
'收货地址联系方式不能为空'
,
self
::
chooseAddressFormMap
=>
'请在地图上选择您的收货地址'
,
self
::
wrongAddressMobile
=>
'您输入的联系方式格式不正确'
,
...
...
@@ -595,8 +584,8 @@ class CodeConfigModel {
self
::
wrongSmsCode
=>
'您的验证码输入有误'
,
self
::
codeIsSixNumberString
=>
'短信验证码是6位数值'
,
self
::
codeIsSixNumberString1
=>
'短信验证码是61位数值'
,
self
::
setMessageFail
=>
'消息设置失败'
,
self
::
removeMessage
=>
'消息删除失败'
,
self
::
setMessageFail
=>
'消息设置失败'
,
self
::
removeMessage
=>
'消息删除失败'
,
self
::
storeNotExistOrClose
=>
'店铺不存在或者已关闭'
,
self
::
emptyStoreId
=>
'店铺ID不能为空'
,
self
::
saveReportError
=>
'保存举报信息失败'
,
...
...
@@ -615,8 +604,8 @@ class CodeConfigModel {
self
::
emptyCityCode
=>
'高德地图城市编码不能为空'
,
self
::
emptyGcId
=>
'分类ID不能为空'
,
self
::
emptyStoreIdForOnlineTopClass
=>
'获取店铺一级在售分类时店铺ID不能为空'
,
self
::
emptyStoreIdForOnlineChildrenClass
=>
'获取店铺下级分类及广告时店铺ID不能为空'
,
self
::
emtpyGcIdForOnlineChildrenClass
=>
'获取店铺下级分类及广告时分类ID不能为空'
,
self
::
emptyStoreIdForOnlineChildrenClass
=>
'获取店铺下级分类及广告时店铺ID不能为空'
,
self
::
emtpyGcIdForOnlineChildrenClass
=>
'获取店铺下级分类及广告时分类ID不能为空'
,
self
::
wrongGcIdForStoreIdChildrenClass
=>
'店铺一级分类不能找到对应可售下级分类'
,
self
::
folderUnwritable
=>
'文件夹不可写'
,
...
...
@@ -627,31 +616,31 @@ class CodeConfigModel {
self
::
imageExtensionsWrong
=>
'图片格式错误'
,
self
::
emptyImageStr
=>
'图片字符串不能为空'
,
//推送
self
::
pushConnectError
=>
'推送连接有误'
,
self
::
pushIsNotOpen
=>
'推送模块没打开,对方未能及时接收到消息!!!'
,
self
::
noExistMessage
=>
'消息不存在'
,
self
::
noExistButton
=>
'不存在此操作按钮'
,
self
::
isClicked
=>
'此按钮已经点击过了'
,
self
::
pushConnectError
=>
'推送连接有误'
,
self
::
pushIsNotOpen
=>
'推送模块没打开,对方未能及时接收到消息!!!'
,
self
::
noExistMessage
=>
'消息不存在'
,
self
::
noExistButton
=>
'不存在此操作按钮'
,
self
::
isClicked
=>
'此按钮已经点击过了'
,
//订单
self
::
orderError
=>
'订单信息错误'
,
self
::
emptyDescCredit
=>
'店铺描述相符评分不能为空'
,
self
::
emptyDeliveryCredit
=>
'店铺物流服务评分不能为空'
,
self
::
emptyServiceCredit
=>
'店铺物流服务评分不能为空'
,
self
::
emptyScores
=>
'商品评分不能为空'
,
self
::
emptyGoodsId
=>
'商品id不能为空'
,
self
::
sendMessageFail
=>
'消息推送失败'
,
self
::
sendLimitError
=>
'每秒钟只发送一次消息谢谢!'
,
self
::
updateReadedError
=>
'更新消息为已读失败!'
,
self
::
authError
=>
'授权参数有误'
,
self
::
authExpire
=>
'授权过期'
,
self
::
notAllowCancel
=>
'对不起,当前订单状态不允许取消'
,
self
::
notAllowComplete
=>
'对不起,当前订单状态不允许确认收货'
,
self
::
orderError
=>
'订单信息错误'
,
self
::
emptyDescCredit
=>
'店铺描述相符评分不能为空'
,
self
::
emptyDeliveryCredit
=>
'店铺物流服务评分不能为空'
,
self
::
emptyServiceCredit
=>
'店铺物流服务评分不能为空'
,
self
::
emptyScores
=>
'商品评分不能为空'
,
self
::
emptyGoodsId
=>
'商品id不能为空'
,
self
::
sendMessageFail
=>
'消息推送失败'
,
self
::
sendLimitError
=>
'每秒钟只发送一次消息谢谢!'
,
self
::
updateReadedError
=>
'更新消息为已读失败!'
,
self
::
authError
=>
'授权参数有误'
,
self
::
authExpire
=>
'授权过期'
,
self
::
notAllowCancel
=>
'对不起,当前订单状态不允许取消'
,
self
::
notAllowComplete
=>
'对不起,当前订单状态不允许确认收货'
,
//优惠券
self
::
emptyCouponId
=>
'优惠券ID不能为空'
,
self
::
emptyCouponId
=>
'优惠券ID不能为空'
,
self
::
emptyCouponStoreId
=>
'获取优惠券时店铺ID不能为空'
,
self
::
emptyMemberCouponState
=>
'优惠券状态不能为空'
,
self
::
emptyMemberCouponMemberId
=>
'获取我的优惠券时会员ID不能为空'
,
...
...
@@ -665,42 +654,42 @@ class CodeConfigModel {
self
::
emptyAdvs
=>
'广告位内容为空'
,
self
::
emptyAdvStore
=>
'获取店铺广告位时店铺ID不能为空'
,
self
::
storeEvaNotExist
=>
'卖家评价不存在'
,
self
::
refundSuccess
=>
'退款成功'
,
self
::
ViewTimeNotExist
=>
'日期时间戳不能为空'
,
self
::
cancleCollectionGoods
=>
'取消关注商品参数错误'
,
self
::
cancleCollectionStore
=>
'取消关注店铺参数错误'
,
self
::
applyError
=>
'申请平台介入失败'
,
self
::
notReturnAgree
=>
'卖家未同意退货'
,
self
::
isNotReturn
=>
'不是退货类型的订单'
,
self
::
isNotExpressType
=>
'退货方式不是快递'
,
self
::
notExistRefund
=>
'退款订单不存在'
,
self
::
sendRefundShippingFail
=>
'添加物流信息失败'
,
self
::
alreadySendRefundShipping
=>
'退货信息已经提交'
,
self
::
buyerCancelError
=>
'买家取消订单失败,订单状态有误'
,
self
::
refundCancelError
=>
'申请退款失败,订单状态有误'
,
self
::
storeCancelError
=>
'商家取消订单失败,订单状态有误'
,
self
::
systemCancelError
=>
'平台取消订单失败,订单状态有误'
,
self
::
systemReceivePayError
=>
'平台收款失败,订单状态有误'
,
self
::
complainError
=>
'买家投诉失败,订单状态有误'
,
self
::
paymentError
=>
'支付失败,订单状态有误'
,
self
::
modifyPriceError
=>
'调整运费失败,订单状态有误'
,
self
::
spayPriceError
=>
'调整商品价格失败,订单状态有误'
,
self
::
sendError
=>
'发货失败,订单状态有误'
,
self
::
receiveError
=>
'收货失败,订单状态有误'
,
self
::
evaluationError
=>
'评价失败,订单状态有误'
,
self
::
lockError
=>
'锁定失败,订单状态有误'
,
self
::
deliverError
=>
'快递跟踪失败,订单状态有误'
,
self
::
notExsitDeliver
=>
'配送单不存在'
,
self
::
notExsitOrder
=>
'订单不存在'
,
self
::
alreadyExsitRefundGoods
=>
'退款订单已经存在'
,
self
::
notAllowDelete
=>
'当前订单状态不允许删除'
,
self
::
platFormAreadyIn
=>
'您已经申请过平台介入'
,
self
::
deleteError
=>
'放入回收站失败,订单状态有误'
,
self
::
restoreError
=>
'永久删除、从回收站还原失败,订单状态有误'
,
self
::
shareError
=>
'分享失败,订单状态有误'
,
self
::
orderDeleteError
=>
'订单删除失败'
,
self
::
storeEvaNotExist
=>
'卖家评价不存在'
,
self
::
refundSuccess
=>
'退款成功'
,
self
::
ViewTimeNotExist
=>
'日期时间戳不能为空'
,
self
::
cancleCollectionGoods
=>
'取消关注商品参数错误'
,
self
::
cancleCollectionStore
=>
'取消关注店铺参数错误'
,
self
::
applyError
=>
'申请平台介入失败'
,
self
::
notReturnAgree
=>
'卖家未同意退货'
,
self
::
isNotReturn
=>
'不是退货类型的订单'
,
self
::
isNotExpressType
=>
'退货方式不是快递'
,
self
::
notExistRefund
=>
'退款订单不存在'
,
self
::
sendRefundShippingFail
=>
'添加物流信息失败'
,
self
::
alreadySendRefundShipping
=>
'退货信息已经提交'
,
self
::
buyerCancelError
=>
'买家取消订单失败,订单状态有误'
,
self
::
refundCancelError
=>
'申请退款失败,订单状态有误'
,
self
::
storeCancelError
=>
'商家取消订单失败,订单状态有误'
,
self
::
systemCancelError
=>
'平台取消订单失败,订单状态有误'
,
self
::
systemReceivePayError
=>
'平台收款失败,订单状态有误'
,
self
::
complainError
=>
'买家投诉失败,订单状态有误'
,
self
::
paymentError
=>
'支付失败,订单状态有误'
,
self
::
modifyPriceError
=>
'调整运费失败,订单状态有误'
,
self
::
spayPriceError
=>
'调整商品价格失败,订单状态有误'
,
self
::
sendError
=>
'发货失败,订单状态有误'
,
self
::
receiveError
=>
'收货失败,订单状态有误'
,
self
::
evaluationError
=>
'评价失败,订单状态有误'
,
self
::
lockError
=>
'锁定失败,订单状态有误'
,
self
::
deliverError
=>
'快递跟踪失败,订单状态有误'
,
self
::
notExsitDeliver
=>
'配送单不存在'
,
self
::
notExsitOrder
=>
'订单不存在'
,
self
::
alreadyExsitRefundGoods
=>
'退款订单已经存在'
,
self
::
notAllowDelete
=>
'当前订单状态不允许删除'
,
self
::
platFormAreadyIn
=>
'您已经申请过平台介入'
,
self
::
deleteError
=>
'放入回收站失败,订单状态有误'
,
self
::
restoreError
=>
'永久删除、从回收站还原失败,订单状态有误'
,
self
::
shareError
=>
'分享失败,订单状态有误'
,
self
::
orderDeleteError
=>
'订单删除失败'
,
self
::
noAddressForOrder
=>
'下单前请选择收货地址'
,
self
::
emptyCartIdsForOrder
=>
'下单时购物车ID不能为空'
,
self
::
emptyParamForOrder
=>
'下单时参数不能为空'
,
...
...
@@ -711,6 +700,8 @@ class CodeConfigModel {
self
::
wrongStoreIdsForOrder
=>
'下单时店铺参数错误'
,
self
::
wrongCartStoreForOrder
=>
'下单时店铺购物车ID参数错误'
,
self
::
bundlingGoodsNotExist
=>
'组合销售商品不存在'
,
self
::
confirmReceiveError
=>
'确认收款失败'
,
self
::
alreadyExsitDeliveryMan
=>
'您的店铺已经存在此配送员'
,
self
::
noStorageForBundlingGoods
=>
'组合销售商品库存不存在'
,
self
::
bundlingGoodsOfflineForCartOrOrder
=>
'组合销售活动已下架'
,
self
::
goodsNoStoreForCartOrOrder
=>
'商品库存不足'
,
...
...
@@ -765,35 +756,35 @@ class CodeConfigModel {
self
::
notExistOrderGoods
=>
'退款商品不存在'
,
self
::
noExpressDeliveryForOrder1
=>
'该店铺未配置快递配送'
,
self
::
goodsNoStoreForCartOrOrder1
=>
'商品库存紧张,您的购买数量太多啦'
,
self
::
noEnoughStorageForBundlingGoods
=>
'组合销售库存紧张,您购买的数量太多啦'
,
self
::
noEnoughStorageForBundlingGoods
=>
'组合销售库存紧张,您购买的数量太多啦'
,
self
::
noOrderWaitToPay
=>
'您的订单已支付,请勿重复支付'
,
self
::
wrongEvaluation
=>
'商品评论应在6-500字之间'
,
self
::
selfGoodsForStoreOrder
=>
'店主不能购买自己的商品'
,
//销售员
self
::
emptySaleGoodsId
=>
'商品id不能为空'
,
self
::
emptySaleGoods
=>
'销售商品不存在'
,
self
::
saleNotLogin
=>
'请先登录'
,
self
::
salePhoneError
=>
'获取验证码的手机号与用户手机号不一致'
,
self
::
saleNotExist
=>
'你不是销售员'
,
self
::
saleValidate
=>
'请先进行身份验证'
,
self
::
saleNotJoin
=>
'你没有参加这个销售活动'
,
self
::
saleActOrGoodsNotExist
=>
'活动或商品不存在'
,
self
::
emptySaleGoodsId
=>
'商品id不能为空'
,
self
::
emptySaleGoods
=>
'销售商品不存在'
,
self
::
saleNotLogin
=>
'请先登录'
,
self
::
salePhoneError
=>
'获取验证码的手机号与用户手机号不一致'
,
self
::
saleNotExist
=>
'你不是销售员'
,
self
::
saleValidate
=>
'请先进行身份验证'
,
self
::
saleNotJoin
=>
'你没有参加这个销售活动'
,
self
::
saleActOrGoodsNotExist
=>
'活动或商品不存在'
,
//意见信箱
self
::
emptyFeedbackDescribe
=>
'反馈内容不能为空'
,
self
::
emptyFeedbackTelepone
=>
'联系方式不能为空'
,
self
::
saveFeedbackError
=>
'保存意见反馈信息失败'
,
self
::
feedbackTelError
=>
'手机号码格式错误'
,
self
::
saveFeedbackError
=>
'保存意见反馈信息失败'
,
self
::
feedbackTelError
=>
'手机号码格式错误'
,
//分享
self
::
shareGrowImageError
=>
'分享图片生成有误'
,
self
::
emptyWxSetting
=>
'微信小程序未配置'
,
self
::
getWxAccessTokenFail
=>
'获得微信小程序token失败'
,
self
::
shareGrowImageError
=>
'分享图片生成有误'
,
self
::
emptyWxSetting
=>
'微信小程序未配置'
,
self
::
getWxAccessTokenFail
=>
'获得微信小程序token失败'
,
self
::
wrongMappingDataForBindMembmer
=>
'mapping数据错误'
,
self
::
otherMemberOpenIdBindForMember
=>
'当前第三方账号已经绑定其他手机号码的账号'
,
self
::
updateMobileMembmerFailed
=>
'更新手机号对应会员信息失败'
,
self
::
updateMobileMembmerMappingFailed
=>
'更新手机号码对应会员mapping信息失败'
,
self
::
currentMobileHasBeenBind
=>
'当前手机号码已经绑定其他微信,如需绑定,请先手机号码登录app进行微信解绑'
,
self
::
otherDriverLogin
=>
'当前帐户在其他设备登录,假如不是您本人操作,请尽快修改密码'
,
self
::
elasticsError
=>
'全文索引连接出错'
,
self
::
otherDriverLogin
=>
'当前帐户在其他设备登录,假如不是您本人操作,请尽快修改密码'
,
self
::
elasticsError
=>
'全文索引连接出错'
,
self
::
emptyLog
=>
'日志内容不能为空'
,
self
::
writeLogFailed
=>
'日志写入失败'
,
self
::
wrongTimeForReadLog
=>
'读日志时写入时间段查询开始时间不能大于结束时间'
,
...
...
application/modules/Client/controllers/Shopkeeper.php
View file @
a8b38774
...
...
@@ -147,9 +147,9 @@ class ShopkeeperController extends \Our\Controller_AbstractApi {
$keyword
=
isset
(
$this
->
req
[
'data'
][
'keyword'
])
?
$this
->
req
[
'data'
][
'keyword'
]
:
''
;
$result
=
$this
->
shopkeeperService
->
getOrders
(
$this
->
memberId
,
$pageIndex
,
$pageSize
,
$orderState
,
$keyword
);
$this
->
success
(
$result
);
if
(
$result
){
$this
->
success
(
array
(),
\Our\DescribeConst
::
successMessage
,
\Our\DescribeConst
::
successMessage
);
}
//
if($result){
//
$this->success(array(),\Our\DescribeConst::successMessage,\Our\DescribeConst::successMessage);
//
}
}
/**
...
...
@@ -201,5 +201,26 @@ class ShopkeeperController extends \Our\Controller_AbstractApi {
}
public
function
receivePaymentAction
(){
$shopkeeperService
=
\Business\Store\ShopkeeperServiceModel
::
getInstance
();
$res
=
$shopkeeperService
->
confirmReceivePayment
(
$this
->
memberId
,
$this
->
req
[
'data'
][
'orderId'
]);
if
(
$res
){
$this
->
success
(
array
(),
\Our\DescribeConst
::
successMessage
);
}
else
{
ErrorModel
::
throwException
(
CodeConfigModel
::
confirmReceiveError
);
}
}
/**
* 查询配送员
*
*/
public
function
searchDeliveryAction
(){
$shopkeeperService
=
\Business\Store\ShopkeeperServiceModel
::
getInstance
();
$res
=
$shopkeeperService
->
getDiliveryMan
(
$this
->
req
[
'data'
][
'mobile'
]);
$res
=
$res
?
$res
:
new
\stdClass
();
$this
->
success
(
$res
,
\Our\DescribeConst
::
successMessage
);
}
}
application/modules/Client/controllers/User.php
View file @
a8b38774
...
...
@@ -68,7 +68,7 @@ class UserController extends \Our\Controller_AbstractIndex {
$member
[
'store_id'
]
=
$seller
[
'storeId'
];
$member
[
'seller_id'
]
=
$seller
[
'sellerId'
];
$this
->
memberService
->
saveMember
(
$member
,
'seller'
);
$this
->
success
(
array
(
'key'
=>
$this
->
key
,
'
memberName'
=>
$member
[
'member_name'
],
'memberAvatar'
=>
$member
[
'memberAvatarUrl'
],
'memberId'
=>
(
int
)
$member
[
'member_i
d'
]));
$this
->
success
(
array
(
'key'
=>
$this
->
key
,
'
trueName'
=>
$seller
[
'trueName'
],
'memberAvatar'
=>
$member
[
'memberAvatarUrl'
],
'memberId'
=>
(
int
)
$member
[
'member_id'
],
'storeId'
=>
(
int
)
$seller
[
'storeI
d'
]));
}
else
{
ErrorModel
::
throwException
(
CodeConfigModel
::
errorUsernameOrPassword
);
}
...
...
public/client/shopkeeper/receivePayment.php
0 → 100644
View file @
a8b38774
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html
xmlns=
"http://www.w3.org/1999/xhtml"
>
<head>
<meta
http-equiv=
"Content-Type"
content=
"text/html; charset=utf-8"
/>
<title>
简单的html5 File测试 for pic2base64
</title>
<style>
</style>
</head>
<body>
<form
action=
"/client/shopkeeper/receivePayment"
method=
"post"
>
用户登录状态key:
<input
name=
"data[key]"
value=
"ceb72deab920ac0edb7272b2ed9dfa1e"
/><br
/>
订单id:
<input
name=
"data[orderId]"
value=
""
/><br
/>
<input
type=
"submit"
value=
"提交"
>
</form>
</body>
</html>
\ No newline at end of file
public/client/shopkeeper/searchDelivery.php
0 → 100644
View file @
a8b38774
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html
xmlns=
"http://www.w3.org/1999/xhtml"
>
<head>
<meta
http-equiv=
"Content-Type"
content=
"text/html; charset=utf-8"
/>
<title>
简单的html5 File测试 for pic2base64
</title>
<style>
</style>
</head>
<body>
<form
action=
"/client/shopkeeper/searchDelivery"
method=
"post"
>
用户登录状态key:
<input
name=
"data[key]"
value=
"73526b0db474f2a0e5f80c67301be73d"
/><br
/>
配送员电话:
<input
name=
"data[mobile]"
value=
"18305954587"
/><br
/>
<input
type=
"submit"
value=
"提交"
>
</form>
</body>
</html>
\ No newline at end of file
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