252 行
8.5 KiB
PHP
可执行文件
252 行
8.5 KiB
PHP
可执行文件
<?php
|
|
|
|
namespace Common\Business;
|
|
|
|
use Common\Model\JurisdictionUserModel;
|
|
use Common\Model\RetailManagerModel;
|
|
use Common\Model\RetailStoreModel;
|
|
|
|
//[1.8.50]
|
|
|
|
/**
|
|
* 店长类
|
|
* Class Manager
|
|
* [
|
|
* 依据店长账号查询店长信息 basisPhoneGetInfo
|
|
* 获取店长列表 getManagerList
|
|
* 添加店长 addStoreManager
|
|
* 修改店长信息 editStoreManager
|
|
* 删除店长角色 delStoreManager
|
|
* ]
|
|
* @package Common\Business
|
|
*/
|
|
class Manager
|
|
{
|
|
|
|
private static $ManagerModel;
|
|
|
|
public function __construct()
|
|
{
|
|
self::$ManagerModel = new RetailManagerModel();
|
|
}
|
|
|
|
/**
|
|
* 依据店长账号查询店长信息
|
|
* @param $param
|
|
* [
|
|
* merchant_id
|
|
* store_id
|
|
* phone 店长账号
|
|
* ]
|
|
* @return mixed
|
|
*/
|
|
public function basisPhoneGetInfo($param)
|
|
{
|
|
try {
|
|
$info = self::$ManagerModel->getFind([
|
|
'merchantid' => $param['merchant_id'],
|
|
'storeid' => $param['store_id'],
|
|
'status' => 1,
|
|
'mobile' => $param['phone']
|
|
]);
|
|
if (!empty($info)) {
|
|
return callBack(statusCode()['success'], "查询成功", $info);
|
|
} else {
|
|
return callBack(statusCode()['error'], "店长查询失败");
|
|
}
|
|
} catch (\Exception $e) {
|
|
return callBack(statusCode()['error'], "店长查询失败");
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 获取店长列表
|
|
* @param param [
|
|
* merchant_id 商户id
|
|
* keyword 搜索内容
|
|
* page 页码
|
|
* limit 页长
|
|
* ]
|
|
*/
|
|
public function getManagerList($param)
|
|
{
|
|
$where = [
|
|
'merchantid' => $param['merchant_id'],
|
|
'status' => 1,
|
|
];
|
|
if (trim($param['keyword'])) {
|
|
$where['mobile|name'] = array('like', '%' . trim($param['keyword']) . '%');
|
|
}
|
|
if (!empty($param['store_id'])) {
|
|
$where['storeid'] = $param['store_id'];
|
|
}
|
|
$list = self::$ManagerModel->getSelect($where, '', 'id desc', "{$param['page']}, {$param['limit']}");
|
|
if ($list) {
|
|
$RetailStoreModel = new RetailStoreModel();
|
|
$storeIdArr = [];
|
|
$storeInfoArr = [];
|
|
foreach ($list as $key => &$val) {
|
|
if (in_array($val['storeid'], $storeIdArr)) {
|
|
$val['store_name'] = $storeInfoArr[$val['storeid']];
|
|
} else {
|
|
$val['store_name'] = $RetailStoreModel->getFindField(['id' => $val['storeid']], 'storetag');
|
|
$storeIdArr[] = $val['storeid'];
|
|
$storeInfoArr[$val['storeid']] = $val['store_name'];
|
|
}
|
|
$val['add_time'] = date('Y-m-d H:i:s', $val['addtime']);
|
|
$val['key_num'] = $key + 1;
|
|
}
|
|
$result = [
|
|
'status' => 1,
|
|
'msg' => '数据获取成功',
|
|
'list' => $list,
|
|
'count' => self::$ManagerModel->getCount($where),
|
|
];
|
|
} else {
|
|
$result = [
|
|
'status' => 1,
|
|
'msg' => '暂无数据',
|
|
'list' => [],
|
|
'count' => 0,
|
|
];
|
|
}
|
|
return $result;
|
|
}
|
|
|
|
/**
|
|
* 添加店长
|
|
* @param param [
|
|
* store_id 门店id
|
|
* mobile 手机号
|
|
* pwd 密码
|
|
* merchant_id 商户id
|
|
* name 名字
|
|
* ]
|
|
*/
|
|
public function addStoreManager($param)
|
|
{
|
|
if (empty($param['store_id'])) {
|
|
return ['status' => 0, 'msg' => '请选择门店'];
|
|
}
|
|
if (strlen($param['password']) < 6 || strlen($param['password']) > 16) {
|
|
return ['status' => 0, 'msg' => '密码长度取值范围6-16位'];
|
|
}
|
|
$NowTime = time();
|
|
//需要先查看改手机号是否已被加入过店长
|
|
$find = self::$ManagerModel->getFind(['mobile' => $param['mobile'], 'status' => 1]);
|
|
if (empty($find)) {
|
|
//可以添加
|
|
$newManager['password'] = createPassword($param['password'], $NowTime);
|
|
$newManager['addtime'] = $NowTime;
|
|
$newManager['storeid'] = $param['store_id'];
|
|
$newManager['mobile'] = $param['mobile'];
|
|
$newManager['name'] = $param['name'];
|
|
$newManager['merchantid'] = $param['merchant_id'];
|
|
$manager_id = self::$ManagerModel->addOrder($newManager);
|
|
|
|
//添加ls_jurisdiction_user
|
|
$Role = new Role();
|
|
$jurData['login_name'] = $param['mobile'];
|
|
$jurData['password'] = $newManager['password'];
|
|
$jurData['name'] = $param['name'];
|
|
$jurData['add_time'] = $newManager['addtime'];
|
|
$jurData['user_type'] = 4;
|
|
$jurData['jurisdiction_group_id'] = $Role->createSystemGroup(['type' => -4, 'store_id' => $param['store_id']]);
|
|
$jurData['system_user_id'] = $manager_id;
|
|
$jurData['pid'] = $this->login_user['id'];
|
|
$JurisdictionUserModel = new JurisdictionUserModel();
|
|
$JurisdictionUserModel->addOrder($jurData);
|
|
if ($manager_id) {
|
|
$result = ['status' => 1, 'msg' => '添加成功'];
|
|
} else {
|
|
$result = ['status' => 0, 'msg' => '添加失败'];
|
|
}
|
|
} else {
|
|
$result = ['status' => 0, 'msg' => '该手机号码已被使用,请更换手机号码'];
|
|
}
|
|
return $result;
|
|
}
|
|
|
|
|
|
/**
|
|
* 修改店长信息
|
|
* @param $param
|
|
* [
|
|
* id
|
|
* mobile_phone 手机号
|
|
* real_name 名字
|
|
* merchant_id 商户id
|
|
* pwd 密码
|
|
* ]
|
|
* @return array
|
|
*/
|
|
public function editStoreManager($param)
|
|
{
|
|
$pwd = $param['pwd'];
|
|
$id = $param['id'];
|
|
$mobile_phone = $param['mobile_phone'];
|
|
$real_name = $param['real_name'];
|
|
if (empty($id)) {
|
|
return ['status' => 0, 'msg' => '参数错误,请重试'];
|
|
} else {
|
|
//继续判断手机号码是否已被使用
|
|
$RetailManagerModel = new RetailManagerModel();
|
|
$map = [
|
|
'mobile' => $mobile_phone,
|
|
'status' => 1,
|
|
'id' => ['neq', $id],
|
|
];
|
|
$find = $RetailManagerModel->getFind($map);
|
|
if ($find) {
|
|
return ['status' => 0, 'msg' => '该手机号已被使用,请更换手机号码'];
|
|
} else {
|
|
$updateData['mobile'] = $mobile_phone;
|
|
$updateData['name'] = $real_name;
|
|
if (!empty($pwd)) {
|
|
//修改密码
|
|
if (strlen($pwd) < 6 || strlen($pwd) > 16) {
|
|
return ['status' => 0, 'msg' => '密码长度取值范围6-16位'];
|
|
}
|
|
$add_time = $RetailManagerModel->getFindField(['id' => $id], 'addtime');
|
|
$updateData['password'] = createPassword($pwd, $add_time);
|
|
$jurSave['password'] = $updateData['password'];
|
|
}
|
|
$updateResult = $RetailManagerModel->updateOrder(['id' => $id], $updateData);
|
|
if ($updateResult) {
|
|
$JurisdictionUserModel = new JurisdictionUserModel();
|
|
$jurMap['system_user_id'] = $id;
|
|
$jurMap['user_type'] = 4;
|
|
$jurSave['login_name'] = trim($mobile_phone);
|
|
$jurSave['name'] = trim($real_name);
|
|
$JurisdictionUserModel->updateOrder($jurMap, $jurSave);
|
|
$result = ['status' => 1, 'msg' => '修改成功'];
|
|
} else {
|
|
$result = ['status' => 0, 'msg' => '修改失败'];
|
|
}
|
|
return $result;
|
|
}
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 删除店长角色
|
|
* @param id
|
|
*/
|
|
public function delStoreManager($id)
|
|
{
|
|
self::$ManagerModel->updateOrder(['id' => $id], ['status' => 2]);
|
|
$JurisdictionUserModel = new JurisdictionUserModel();
|
|
$delMap = ['system_user_id' => $id, 'user_type' => 4];
|
|
$delSave = ['state' => 0, 'status' => 0];
|
|
$delResult = $JurisdictionUserModel->updateOrder($delMap, $delSave);
|
|
if ($delResult) {
|
|
$result['status'] = 1;
|
|
$result['msg'] = '删除成功';
|
|
} else {
|
|
$result['status'] = 2;
|
|
$result['msg'] = '删除失败';
|
|
}
|
|
return $result;
|
|
}
|
|
}
|