diff --git a/zhctproject/store/application/p/logic/SportExperience.php b/private/tmp/cdx-store-sport-archive-20261010/source/application/p/logic/SportExperience.php index 6b593ba..1b3905d 100644 --- a/zhctproject/store/application/p/logic/SportExperience.php +++ b/private/tmp/cdx-store-sport-archive-20261010/source/application/p/logic/SportExperience.php @@ -29,7 +29,7 @@ class SportExperience public function add($params, $createBy) { try { $params['uuid'] = guid(); - $params['create_by'] = $createBy; + $params['create_by'] = self::normalizeCreateBy($createBy, ltrim((string)\think\Config::get('database.type'), '\\') === \app\cores\database\Dm::class); $params['create_time'] = date("Y-m-d H:i:s"); $res = $this->model->add($params); if(!$res) { @@ -41,6 +41,12 @@ class SportExperience return ['code' => 0, 'message' => '新建成功', 'data' => []]; } + /** Preserve this legacy VARCHAR(32) field's observed non-strict MySQL truncation. */ + private static function normalizeCreateBy(string $value, bool $isDm): string + { + return $isDm ? mb_substr($value, 0, 32, 'UTF-8') : $value; + } + /** * 电子档案--运动经历列表 * @author 李鑫 @@ -112,4 +118,4 @@ class SportExperience } return ['code' => 0, 'message' => '删除成功', 'data' => []]; } -} \ No newline at end of file +}