diff --git a/app/controller/CarTypeController.php b/app/controller/CarTypeController.php index bb022a0..1dec007 100644 --- a/app/controller/CarTypeController.php +++ b/app/controller/CarTypeController.php @@ -18,9 +18,13 @@ class CarTypeController $list = CarType::getAll(); if($request->user['language'] != 'zh_CN'){ - foreach ($list as $key => &$value) { + foreach ($list as &$value) { $value['name'] = $value['name_en']; } + }elseif ($request->user['language'] == 'ru'){ + foreach ($list as &$value) { + $value['name'] = $value['name_ru']; + } } return Util::success($list); diff --git a/app/controller/CustomerController.php b/app/controller/CustomerController.php index 90eefa3..9b098d1 100644 --- a/app/controller/CustomerController.php +++ b/app/controller/CustomerController.php @@ -33,6 +33,8 @@ class CustomerController $gradeConstants = Constants::GRADE_EN; if($request->user['language'] == 'zh_CN'){ $gradeConstants = Constants::GRADE; + }elseif ($request->user['language'] == 'ru'){ + $gradeConstants = Constants::GRADE_RU; } foreach ($gradeConstants as $key => $value) { $grade[] = [ @@ -54,6 +56,8 @@ class CustomerController $magnitudeConstants = Constants::MAGNITUDE_EN; if($request->user['language'] == 'zh_CN'){ $magnitudeConstants = Constants::MAGNITUDE; + }elseif ($request->user['language'] == 'ru'){ + $magnitudeConstants = Constants::MAGNITUDE_RU; } foreach ($magnitudeConstants as $key => $value) { $grade[] = [ @@ -74,9 +78,13 @@ class CustomerController $list = Channel::getAll(); if($request->user['language'] != 'zh_CN'){ - foreach ($list as $key => &$value) { + foreach ($list as &$value) { $value['name'] = $value['name_en']; } + }elseif ($request->user['language'] == 'ru'){ + foreach ($list as &$value) { + $value['name'] = $value['name_ru']; + } } return Util::success($list); diff --git a/app/controller/UserController.php b/app/controller/UserController.php index 2931bce..7fc3579 100644 --- a/app/controller/UserController.php +++ b/app/controller/UserController.php @@ -330,7 +330,7 @@ class UserController if (Util::isEmpty($language)) { return Util::fail([], 'language' . trans('not_null')); } - if (!in_array($language, ['en', 'zh_CN'])) { + if (!in_array($language, ['en', 'zh_CN','ru'])) { return Util::fail([], trans('param_error')); } $data = [ diff --git a/app/model/Customer.php b/app/model/Customer.php index 52d30b0..6c3d2b7 100644 --- a/app/model/Customer.php +++ b/app/model/Customer.php @@ -68,19 +68,19 @@ class Customer extends Model public static function getCustomer($customer, $request, $tag = false) { $language = $request->user['language'] ?: 'en'; - $customer['grade_txt'] = $language=='en'?Constants::GRADE_EN[$customer['grade']]:Constants::GRADE[$customer['grade']]; - $customer['magnitude_txt'] = $language=='en'?Constants::MAGNITUDE_EN[$customer['magnitude']]:Constants::MAGNITUDE[$customer['magnitude']]; - $customer['sex_txt'] = $language=='en'?Constants::SEX_EN[$customer['sex']]:Constants::SEX[$customer['sex']]; + $customer['grade_txt'] = Util::language($language, Constants::GRADE_EN[$customer['grade']], Constants::GRADE[$customer['grade']], Constants::GRADE_RU[$customer['grade']]); + $customer['magnitude_txt'] = Util::language($language, Constants::MAGNITUDE_EN[$customer['grade']], Constants::MAGNITUDE[$customer['grade']], Constants::MAGNITUDE_RU[$customer['grade']]); + $customer['sex_txt'] = Util::language($language, Constants::SEX_EN[$customer['grade']], Constants::SEX[$customer['grade']], Constants::SEX_RU[$customer['grade']]); if ($customer['grade']<=2) { $customer['follow'] = 0; - $customer['follow_txt'] = ($language == 'en' ? 'Following' : '跟进中'); + $customer['follow_txt'] = Util::language($language,'Following','跟进中','Продолжение'); }elseif ($customer['grade']<5) { $customer['follow'] = 1; - $customer['follow_txt'] = ($language == 'en' ? 'transacted' : '已成交'); + $customer['follow_txt'] = Util::language($language,'transacted','已成交','Транзакция завершена'); }else{ $customer['follow'] = 2; - $customer['follow_txt'] = ($language == 'en' ? 'lost' : '已流失'); + $customer['follow_txt'] = Util::language($language,'lost','已流失','Потерянный'); } $where = [ @@ -96,7 +96,7 @@ class Customer extends Model // $customer['updated_at'] = Util::timeTotDate($customer['updated_at']); $customer = Util::formatDate($customer,['follow_last']); - $nameLang = $language=='en'?'name_en':'name'; + $nameLang = $language=='en'?'name_en':($language=='ru'?'name_ru':'name'); $countryLang = $language=='en'?'en_addr':'cn_addr'; $customer['car_type_name'] = empty($customer['car_type_id'])?'':CarType::where(['id'=>$customer['car_type_id']])->value($nameLang); $customer['country_name'] = empty($customer['country_id'])?'':Country::where(['id'=>$customer['country_id']])->value($countryLang); diff --git a/app/util/Util.php b/app/util/Util.php index 77a5e81..e5c07dc 100644 --- a/app/util/Util.php +++ b/app/util/Util.php @@ -105,4 +105,17 @@ class Util return $value; } + /** + * 格式化创建时间 + */ + public static function language($language = 'en',$en,$zh_CN,$ru) + { + if ($language == 'zh_CN'){ + return $zh_CN; + }elseif ($language == 'ru'){ + return $ru; + } + return $en; + } + } \ No newline at end of file diff --git a/config/constants/Constants.php b/config/constants/Constants.php index e4f4fad..f6a4b2d 100644 --- a/config/constants/Constants.php +++ b/config/constants/Constants.php @@ -27,6 +27,14 @@ class Constants self::CUSTOMER_GRADE_SALES => 'After Sales', self::CUSTOMER_GRADE_LOSS => 'Stagnation or loss', ]; + public const GRADE_RU = [ + self::CUSTOMER_GRADE_INITIAL => 'Первоначальные контакты', + self::CUSTOMER_GRADE_COMMUNICATE => 'Потребности в общении', + self::CUSTOMER_GRADE_PLAN => 'Продвижение программы', + self::CUSTOMER_GRADE_DEAL => 'Этап сделки', + self::CUSTOMER_GRADE_SALES => 'Послепродажный этап', + self::CUSTOMER_GRADE_LOSS => 'Застой или потеря', + ]; //客户重要性 public const CUSTOMER_MAGNITUDE_INITIAL = 0; // 金牌商机 @@ -44,6 +52,12 @@ class Constants self::CUSTOMER_MAGNITUDE_PLAN => 'Bronze Medal', ]; + public const MAGNITUDE_RU = [ + self::CUSTOMER_MAGNITUDE_INITIAL => 'Золотой бизнес', + self::CUSTOMER_MAGNITUDE_COMMUNICATE => 'Серебряный бизнес', + self::CUSTOMER_MAGNITUDE_PLAN => 'Бронзовый бизнес.', + ]; + //跟进类型 public const CUSTOMER_FOLLOW_VISIT = 0; // 线下拜访 @@ -68,13 +82,18 @@ class Constants self::CUSTOMER_SEX_MAN => '男', self::CUSTOMER_SEX_WOMAN => '女', ]; - public const SEX_EN = [ self::CUSTOMER_SEX_UNKNOWN => 'unknown', self::CUSTOMER_SEX_MAN => 'man', self::CUSTOMER_SEX_WOMAN => 'woman', ]; + public const SEX_RU = [ + self::CUSTOMER_SEX_UNKNOWN => 'неизвестный', + self::CUSTOMER_SEX_MAN => 'мужской', + self::CUSTOMER_SEX_WOMAN => 'женский', + ]; + public const SIGN = [ ['id' => 'xinyouhe', 'name' => '新友合'], ['id' => 'mbaf', 'name' => 'MAGIC BRIDGE AUTO FZE'] diff --git a/resource/translations/ru/messages.php b/resource/translations/ru/messages.php new file mode 100644 index 0000000..c96f0ab --- /dev/null +++ b/resource/translations/ru/messages.php @@ -0,0 +1,35 @@ + ' Успех', + 'fail' => ' Неудача', + 'login_success' => ' Регистрация завершена', + 'password_error' => ' Ошибка пароля', + 'user_none' => ' Пользователь не существует', + 'user_id' => ' Идентификатор пользователя', + 'user_login' => ' Пожалуйста, войдите.', + 'not_null' => ' Нельзя быть пустым', + 'code_error' => ' Ошибка кода проверки', + 'format_error' => ' Ошибка формата', + 'email_repeat' => ' Почтовый ящик повторяется', + 'email_error' => ' Ошибка формата почтового ящика', + 'save_success' => ' Сохранить успешно', + 'save_fail' => ' Ошибка сохранения', + 'register_success' => ' Регистрация успешно', + 'register_fail' => ' Ошибка регистрации', + 'language_success' => ' Переключить язык успешно', + 'language_fail' => ' Ошибка переключения языка', + 'param_error' => ' Ошибка параметра', + 'required_not_null' => ' Обязательное заполнение не может быть пустым.', + 'picture_not_null' => ' Фотографии не могут быть пустыми', + 'contacts_not_null' => ' Контакты, почтовый ящик, телефон не может быть одновременно пустым', + 'car_type_not_null' => ' Предпочтения не могут быть пустыми', + 'channel_not_null' => ' Каналы не могут быть пустыми', + 'email_consistent' => ' Почтовый ящик не совпадает', + 'sign_not_null' => ' Компания не создана', + 'password_short' => ' Пароль не может быть меньше 6.', + 'id_empty' => ' ID не может быть пустым', + 'customer_id' => ' Идентификатор клиента', + 'tag_group_id' => ' Идентификатор группы меток', + 'claim_fail' => ' Невозможность получения принадлежащего клиенту', +]; \ No newline at end of file