From 111a22694de4d3be46cbb7432971df12ee4dfd55 Mon Sep 17 00:00:00 2001 From: xjh <2423579486@qq.com> Date: Wed, 19 Apr 2023 23:49:11 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E5=AE=8C=E6=88=90=E5=90=8E=E5=8F=B0?= =?UTF-8?q?=E5=85=B3=E4=BA=8E=E6=88=91=E4=BB=AC-=E5=85=AC=E5=8F=B8?= =?UTF-8?q?=E7=AE=80=E4=BB=8B=E6=A8=A1=E5=9D=97=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/AboutUs/CompanyProfile.php | 125 ++++++++++++++++++ app/common/model/AboutUs/CompanyProfile.php | 74 +++++++++++ 2 files changed, 199 insertions(+) create mode 100644 app/admin/controller/AboutUs/CompanyProfile.php create mode 100644 app/common/model/AboutUs/CompanyProfile.php diff --git a/app/admin/controller/AboutUs/CompanyProfile.php b/app/admin/controller/AboutUs/CompanyProfile.php new file mode 100644 index 0000000..59429b2 --- /dev/null +++ b/app/admin/controller/AboutUs/CompanyProfile.php @@ -0,0 +1,125 @@ +field([ + 'company_profile_id', + 'company_profile_guid', + 'company_profile_img', + 'company_profile_content', + 'company_profile_order' + ]) + ->order('company_profile_order', 'asc'); + + return msg("获取公司简介列表成功!", $query); + } + + /** + * 编辑公司简介接口 + * + * @param Request request + * @return array + * @date 2023-04-19 + * @author xjh + * @since 1.0.0 + */ + public function editCompanyProfile(Request $request): array + { + $params = $request->param(); + $this->validate($params, [ + 'company_profile_img|简介图片' => 'require', + 'company_profile_content|简介内容' => 'require', + 'company_profile_order|简介排序' => 'require' + ]); + $model = ModelCompanyProfile::where('company_profile_guid', $params['company_profile_guid'])->find(); + if (!$model) throwErrorMsg("该公司简介不存在", 1); + $model->allowField([ + 'company_profile_update_user_guid', + 'company_profile_img', + 'company_profile_content', + 'company_profile_order' + ])->save($params); + return msg('编辑成功!'); + } + + /** + * 添加公司简介接口 + * + * @param Request request + * @return array + * @date 2023-04-19 + * @author xjh + * @since 1.0.0 + */ + public function addCompanyProfile(Request $request): array + { + $params = $request->param(); + $this->validate($params, [ + 'company_profile_img|简介图片' => 'require', + 'company_profile_content|简介内容' => 'require', + 'company_profile_order|简介排序' => 'require' + ]); + ModelCompanyProfile::create($params, [ + 'company_profile_guid', + 'company_profile_create_user_guid', + 'company_profile_update_user_guid', + 'company_profile_img', + 'company_profile_content', + 'company_profile_order' + ]); + return msg('添加成功!'); + } + + /** + * 删除公司简介接口 + * + * @param Request request + * @return array + * @date 2023-04-19 + * @author xjh + * @since 1.0.0 + */ + public function deleteCompanyProfile(Request $request): array + { + $params = $request->param(); + $this->validate($params, [ + 'company_profile_guid' => 'require', + ]); + $company_profile = ModelCompanyProfile::where([ + 'company_profile_guid' => explode(',', $params['company_profile_guid']) + ])->select(); + $company_profile->delete(); + return msg('删除成功!'); + } +} diff --git a/app/common/model/AboutUs/CompanyProfile.php b/app/common/model/AboutUs/CompanyProfile.php new file mode 100644 index 0000000..2361355 --- /dev/null +++ b/app/common/model/AboutUs/CompanyProfile.php @@ -0,0 +1,74 @@ + "int", + "company_profile_guid" => "string", + "company_profile_img" => "string", + "company_profile_content" => "string", + "company_profile_order" => "int", + "company_profile_create_time" => "datetime", + "company_profile_create_user_guid" => "string", + "company_profile_update_time" => "datetime", + "company_profile_update_user_guid" => "string", + "company_profile_delete_time" => "datetime", + "company_profile_delete_user_guid" => "string", + ]; + // 设置json类型字段 + protected $json = ['']; + // 开启自动写入时间戳字段 + protected $autoWriteTimestamp = 'datetime'; + // 创建时间 + protected $createTime = 'company_profile_create_time'; + // 修改时间 + protected $updateTime = 'company_profile_update_time'; + + //排序字段 + public $order_field = 'company_profile_order'; + + /** + * 新增前 + */ + public static function onBeforeInsert(self $model): void + { + Tool::sortInsertProc(self::class, $model->company_profile_order); + $model->completeCreateField(); + } + + /** + * 更新前 + */ + public static function onBeforeUpdate(self $model): void + { + Tool::sortEditProc(self::class, $model->company_profile_guid, $model->company_profile_order); + $model->completeUpdateField(); + } + + /** + * 删除前 + */ + public static function onBeforeDelete(self $model): void + { + Tool::sortDeleteProc(self::class, $model->company_profile_guid); + $model->completeDeleteField(); + } +}