feat: 联系我们成为分销商

This commit is contained in:
2025-04-21 11:59:11 +08:00
committed by jsasg
parent f04635dae5
commit f3dc287ad7
11 changed files with 380 additions and 49 deletions

View File

@@ -3,9 +3,13 @@ declare (strict_types = 1);
namespace app\index\controller;
use app\index\model\AgentBusinessTypeModel;
use app\index\model\AgentEnterpriseSizeTypeModel;
use app\index\model\AgentModel;
use app\index\model\LeaveMessageModel;
use app\index\model\SysBannerModel;
use app\index\validate\ContactUsValidate;
use app\index\validate\ContactUsDistributorValidate;
use app\index\validate\ContactUsMessageValidate;
use think\facade\View;
/**
@@ -35,7 +39,7 @@ class ContactUs extends Common
]);
// 数据校验
$validate = new ContactUsValidate;
$validate = new ContactUsMessageValidate;
if (!$validate->check($form_data)) {
return error($validate->getError());
}
@@ -92,7 +96,49 @@ class ContactUs extends Common
{
if (request()->isPost()) {
// 提交留言处理
$form_data = request()->post([
'corp_name',
'email',
'phone',
'business_type',
'enterprise_size',
'address',
'message'
]);
// 验证字段
$validate = new ContactUsDistributorValidate;
if (!$validate->check($form_data)) {
return error($validate->getError());
}
// 保存留言
$ret = AgentModel::create([
'language_id' => $this->lang_id,
'corp_name' => $form_data['corp_name'],
'email' => $form_data['email'],
'phone' => $form_data['phone'],
'referer_url' => request()->header('referer'),
'website_url' => request()->header('host'),
'business_type' => $form_data['business_type'],
'enterprise_size' => $form_data['enterprise_size'],
'address' => $form_data['address'],
'message' => $form_data['message'],
'ip' => request()->ip(),
]);
if ($ret->isEmpty()) {
return error(lang('contact_distributor.send_fail'));
}
return success(lang('contact_distributor.send_success'));
}
// 获取企业规模
$sizes = AgentEnterpriseSizeTypeModel::language($this->lang_id)->select();
View::assign('sizes', $sizes);
// 获取企业业务类型
$types = AgentBusinessTypeModel::language($this->lang_id)->select();
View::assign('types', $types);
return View::fetch('distributor');
}