【类 型】:feat

【原  因】:发布公告接口
【过  程】:
【影  响】:

# 类型 包含:
# feat:新功能(feature)
# fix:修补bug
# docs:文档(documentation)
# style: 格式(不影响代码运行的变动)
# refactor:重构(即不是新增功能,也不是修改bug的代码变动)
# test:增加测试
# chore:构建过程或辅助工具的变动
This commit is contained in:
air 2025-06-12 17:12:57 +08:00
parent 0093b033bc
commit 0f43736b13

View File

@ -260,6 +260,50 @@ class AdminController extends PublicController
echo json_encode(array('status' => 0, 'msg' => '参数有误'));
}
}
/**
* @description: 向管理员用户发布公告
*/
public function pubMessage()
{
// 非总管理员,拦截
if ($this->tokenShop_id != C('powerId')) {
echo json_encode(['status' => 0, 'msg' => '没有权限']);
exit;
}
// 参数校验
if (empty($_REQUEST['idArr']) || empty($_REQUEST['message']) || empty($_REQUEST['end_time'])) {
echo json_encode(['status' => 0, 'msg' => '参数不完整']);
exit;
}
// 格式化 idArr
$idArr = is_array($_REQUEST['idArr']) ? $_REQUEST['idArr'] : explode(',', strval($_REQUEST['idArr']));
// 构造数据
$data = [
'message' => trim($_REQUEST['message']),
'end_time' => intval($_REQUEST['end_time']),
'add_time' => time(), // 可选:记录发布时间
];
// 数据库操作,逐条插入(假设 message 是发给每个用户单独记录的)
$messageDb = D('message');
$success = 0;
foreach ($idArr as $adminId) {
$data['admin_id'] = intval($adminId); // 关联的管理员ID
if ($messageDb->add($data)) {
$success++;
}
}
if ($success > 0) {
echo json_encode(['status' => 1, 'msg' => '公告已成功发布']);
} else {
echo json_encode(['status' => 0, 'msg' => '公告发布失败']);
}
}
/**
* @description: 分类列表
*/