更新若干bug

This commit is contained in:
2026-03-11 17:05:58 +08:00
parent f134b0e759
commit e46a4100c7
9 changed files with 355 additions and 15 deletions
@@ -43,7 +43,7 @@ class SiteSettingsController extends BaseController
$data = [
'sitename' => $siteSetting->sitename ?? '',
'logo' => $siteSetting->logo ?? '',
'logow' => $siteSetting->{'logo-w'} ?? '',
'logow' => $siteSetting->logow ?? '',
'description' => $siteSetting->description ?? '',
'copyright' => $siteSetting->copyright ?? '',
'companyname' => $siteSetting->companyname ?? '',
@@ -89,7 +89,7 @@ class SiteSettingsController extends BaseController
$siteSetting->logo = (string)$rawData['logo'];
}
if (isset($rawData['logow'])) {
$siteSetting->{'logo-w'} = (string)$rawData['logow'];
$siteSetting->logow = (string)$rawData['logow'];
}
if (isset($rawData['description'])) {
$siteSetting->description = (string)$rawData['description'];
@@ -300,4 +300,77 @@ class SiteSettingsController extends BaseController
return json(['code' => 200, 'msg' => '企业信息保存成功']);
}
/**
* 获取企业SEO
* @return Json
*/
public function getCompanySeo()
{
// 获取当前租户ID
$tid = $this->getTenantId();
// 直接根据 ID 查询租户记录
$tenant = Tenant::where('delete_time', null)
->where('id', $tid)
->field('seoTitle, seoKeywords, seoDescription')
->find();
// 如果没有数据,返回默认空值
if (!$tenant) {
$data = [
'seoTitle' => '',
'seoKeywords' => '',
'seoDescription' => ''
];
} else {
// 直接读取模型对象的属性
$data = [
'seoTitle' => $tenant->seoTitle ?? '',
'seoKeywords' => $tenant->seoKeywords ?? '',
'seoDescription' => $tenant->seoDescription ?? ''
];
}
$this->logSuccess('站点设置管理', '查看企业SEO', ['tid' => $tid], $this->getAdminUserInfo());
return json([
'code' => 200,
'msg' => '获取成功',
'data' => $data
]);
}
/**
* 保存企业SEO
* @return Json
*/
public function saveCompanySeo()
{
$params = $this->request->param();
$id = $this->getTenantId();
$tenant = Tenant::where('delete_time', null)
->where('id', $id)
->find();
if (!$tenant) {
return json(['code' => 404, 'msg' => '租户不存在']);
}
// 构建更新数据
$updateData = [];
if (isset($params['seoTitle'])) $updateData['seoTitle'] = (string)$params['seoTitle'];
if (isset($params['seoKeywords'])) $updateData['seoKeywords'] = (string)$params['seoKeywords'];
if (isset($params['seoDescription'])) $updateData['seoDescription'] = (string)$params['seoDescription'];
if (!empty($updateData)) {
$tenant->save($updateData);
}
$this->logSuccess('站点设置管理', '保存企业SEO', ['tid' => $id], $this->getAdminUserInfo());
return json(['code' => 200, 'msg' => '企业SEO保存成功']);
}
}
+2
View File
@@ -10,3 +10,5 @@ Route::get('legalInfos', 'app\\admin\\controller\\SiteSettingsController@getLega
Route::post('saveLegalInfos', 'app\\admin\\controller\\SiteSettingsController@saveLegalInfos');
Route::get('companyInfos', 'app\\admin\\controller\\SiteSettingsController@getCompanyInfos');
Route::post('saveCompanyInfos', 'app\\admin\\controller\\SiteSettingsController@saveCompanyInfos');
Route::get('companySeo', 'app\\admin\\controller\\SiteSettingsController@getCompanySeo');
Route::post('saveCompanySeo', 'app\\admin\\controller\\SiteSettingsController@saveCompanySeo');
+94 -1
View File
@@ -14,6 +14,8 @@ use think\db\exception\DbException;
use think\facade\Env;
use think\facade\Request;
use app\model\Cms\TemplateSiteConfig;
use app\model\Tenant\Tenant;
use app\model\Cms\Demand;
class Index extends BaseController
{
@@ -347,4 +349,95 @@ class Index extends BaseController
]);
}
}
}
/**
* 获取企业信息
* @return \think\response\Json
*/
public function getCompanyInfos()
{
// 从基类获取租户ID
$tid = $this->tenantId;
try {
$companyInfo = Tenant::where('delete_time', null)
->where('id', $tid)
->field('contact_phone, contact_email, address, worktime')
->find();
return json([
'code' => 200,
'msg' => 'success',
'data' => $companyInfo ?: null
]);
} catch (DbException $e) {
return json([
'code' => 500,
'msg' => 'fail' . $e->getMessage(),
'data' => null
]);
}
}
/**
* 客户需求接口
* post /index/requirement
* @param string $title 标题
* @param string $desc 描述
* @param string $applicant 申请人
* @param string $phone 手机号
* @return \think\response\Json
*/
public function requirement()
{
// 获取参数
$title = Request::param('title', '');
$desc = Request::param('desc', '');
$applicant = Request::param('applicant', '');
$phone = Request::param('phone', '');
// 验证必填字段
if (empty($title)) {
return json([
'code' => 400,
'msg' => '标题不能为空',
'data' => null
]);
}
if (empty($desc)) {
return json([
'code' => 400,
'msg' => '描述不能为空',
'data' => null
]);
}
// 从基类获取租户ID
$tid = $this->tenantId;
try {
// 保存到需求表
$id = Demand::insertGetId([
'tid' => $tid,
'title' => $title,
'desc' => $desc,
'applicant' => $applicant,
'phone' => $phone,
'status' => 1,
'create_time' => date('Y-m-d H:i:s')
]);
return json([
'code' => 200,
'msg' => '提交成功',
'data' => ['id' => $id]
]);
} catch (DbException $e) {
return json([
'code' => 500,
'msg' => '提交失败:' . $e->getMessage(),
'data' => null
]);
}
}
}
+5 -1
View File
@@ -8,8 +8,12 @@ Route::get('index/index', 'app\index\controller\Index@index');
// --- 模板初始化接口 ---
Route::get('init', 'app\index\controller\Index@init');
// --- 前端底部数据路由 ---
// --- 前端其他数据路由 ---
Route::get('footerdata', 'app\index\controller\Index@getFooterData');
Route::get('companyInfos', 'app\index\controller\Index@getCompanyInfos');
Route::post('requirement', 'app\index\controller\Index@requirement');
// --- 客户需求路由 ---
// --- 文章列表路由 ---
Route::get('getCenterNews', 'app\index\controller\Article\NewsCenterController@getCenterNews');
+1 -1
View File
@@ -31,7 +31,7 @@ class SystemSiteSetting extends Model
'tid' => 'integer',
'sitename' => 'string',
'logo' => 'string',
'logo-w' => 'string',
'logow' => 'string',
'description' => 'string',
'copyright' => 'string',
'companyname' => 'string',
+3
View File
@@ -31,6 +31,9 @@ class Tenant extends Model
'contact_email' => 'string',
'address' => 'string',
'worktime' => 'string',
'seoTitle' => 'string',
'seoKeywords' => 'string',
'seoDescription' => 'string',
'status' => 'integer',
'create_time' => 'datetime',
'update_time' => 'datetime',