|
@@ -18,6 +18,51 @@ class TimbreService
|
|
|
|
|
|
}
|
|
|
|
|
|
+ public function addCategory($data) {
|
|
|
+ $category_name = getProp($data, 'category_name');
|
|
|
+ $pid = getProp($data, 'pid');
|
|
|
+ if ($pid === '') Utils::throwError('20003:参数异常');
|
|
|
+
|
|
|
+ $category = DB::table('mp_timbre_categories')->where('category_name', $category_name)->first();
|
|
|
+ if ($category) {
|
|
|
+ return Utils::throwError('20003:该分类已存在');
|
|
|
+ }
|
|
|
+
|
|
|
+ if ($pid) {
|
|
|
+ $category = DB::table('mp_timbre_categories')->where('id', $pid)->first();
|
|
|
+ if (!$category) {
|
|
|
+ return Utils::throwError('20003:该分类不存在');
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ return DB::table('mp_timbre_categories')->insert([
|
|
|
+ 'category_name' => $category_name,
|
|
|
+ 'pid' => $pid,
|
|
|
+ 'created_at' => date('Y-m-d H:i:s'),
|
|
|
+ 'updated_at' => date('Y-m-d H:i:s'),
|
|
|
+ ]);
|
|
|
+ }
|
|
|
+
|
|
|
+ public function editCategory($data) {
|
|
|
+ $category_id = getProp($data, 'category_id');
|
|
|
+ $category_name = getProp($data, 'category_name');
|
|
|
+
|
|
|
+ $category = DB::table('mp_timbre_categories')->where('id', $category_id)->first();
|
|
|
+ if (!$category) {
|
|
|
+ return Utils::throwError('20003:该分类不存在');
|
|
|
+ }
|
|
|
+
|
|
|
+ $category = DB::table('mp_timbre_categories')->where('category_name', $category_name)->first();
|
|
|
+ if ($category && $category->id != $category_id) {
|
|
|
+ return Utils::throwError('20003:该分类已存在');
|
|
|
+ }
|
|
|
+
|
|
|
+ return DB::table('mp_timbre_categories')->where('id', $category_id)->update([
|
|
|
+ 'category_name' => $category_name,
|
|
|
+ 'updated_at' => date('Y-m-d H:i:s'),
|
|
|
+ ]);
|
|
|
+ }
|
|
|
+
|
|
|
public function getCategoryList($data) {
|
|
|
$category_type = getProp($data, 'category_type', 1);
|
|
|
$category_id = getProp($data, 'category_id');
|
|
@@ -74,6 +119,15 @@ class TimbreService
|
|
|
return $result;
|
|
|
}
|
|
|
|
|
|
+ public function timbreCategories($data) {
|
|
|
+ $categories = DB::table('mp_timbre_categories')->where('is_enable', 1)->select('id as category_id', 'category_name', 'pid')->get()->map(function ($value) {
|
|
|
+ return (array)$value;
|
|
|
+ })->toArray();
|
|
|
+
|
|
|
+ $result = buildCategoryTree($categories, 0);
|
|
|
+ return $result;
|
|
|
+ }
|
|
|
+
|
|
|
public function editTimbre($data) {
|
|
|
$timbre_id = getProp($data, 'voice_id');
|
|
|
$timbre = DB::table('mp_timbres')->where('id', $timbre_id)->first();
|