From 16cb822bf0e6c6dac2a9d0663efe93107ada9093 Mon Sep 17 00:00:00 2001
From: lefengyang <lefengyang@tencent.com>
Date: Thu, 27 Aug 2026 19:05:10 +0800
Subject: [PATCH] bugfix

---
 ledApp/pages/addTemplate/addTemplate.vue |   45 ++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 44 insertions(+), 1 deletions(-)

diff --git a/ledApp/pages/addTemplate/addTemplate.vue b/ledApp/pages/addTemplate/addTemplate.vue
index f1a9091..6ced3ec 100644
--- a/ledApp/pages/addTemplate/addTemplate.vue
+++ b/ledApp/pages/addTemplate/addTemplate.vue
@@ -31,6 +31,18 @@
 					</uv-upload>
 				</view>
 			</view>
+			<view class="temp_item" v-if="!isEditMode">
+				<view class="title">
+					预制动画
+				</view>
+				<view class="item">
+					<uv-radio-group v-model="selectedPreset" placement="column" @change="changePreset" labelSize="26rpx">
+						<uv-radio class="spec_radio" v-for="(item, index) in presetList" :key="index" :label="'预制动画:'+item.name"
+							:name="item.name">
+						</uv-radio>
+					</uv-radio-group>
+				</view>
+			</view>
 			<view class="temp_item">
 				<view class="title">
 					屏幕规格
@@ -216,7 +228,8 @@
 	import {
 		templeteAdd,
 		templeteInfo,
-		templeteEdit
+		templeteEdit,
+		templeteList
 	} from '@/api/api.js'
 	let ctx = null
 	export default {
@@ -311,6 +324,9 @@
 				scrollLeft: 0,
 				textType: 'overwrite',
 				tempText: '',
+				presetList: [],
+				selectedPreset: '',
+				isEditMode: false,
 			}
 		},
 		computed: {
@@ -326,9 +342,12 @@
 				this.tId = opt.id
 				this.getTempleteInfo()
 				this.titleName = '编辑模版'
+				this.isEditMode = true
 			}
 			else{
 				this.titleName = '新增模版'
+				this.isEditMode = false
+				this.getPresetList()
 			}
 		},
 		onShow() {
@@ -348,6 +367,30 @@
 			}
 		},
 		methods: {
+			getPresetList() {
+				templeteList({
+					userId: 1,
+					pageNum: 1,
+					pageSize: 99
+				}).then(res => {
+					console.log('预制动画列表-------', res.rows)
+					if(res.code == 200){
+						this.presetList = res.rows || []
+					}
+				})
+			},
+			changePreset(val) {
+				const preset = this.presetList.find(item => item.name === val)
+				if (preset) {
+					this.specVal = preset.screen
+					this.modeVal = preset.mode
+					this.total = preset.fpsTotal
+					this.speed = preset.speed
+					if (preset.fpsList) {
+						this.fpsList = JSON.parse(preset.fpsList)
+					}
+				}
+			},
 			handleScroll(e){
 				this.scrollLeft = e.detail.scrollLeft
 			},

--
Gitblit v1.10.0