update editor

This commit is contained in:
2026-07-23 01:23:53 +07:00
parent beefb549d0
commit 32c2dae619
2 changed files with 57 additions and 32 deletions
+27 -27
View File
@@ -33,18 +33,6 @@ const scenario = ref<Scenario>({
publishedAt: undefined,
})
const newPlace = ref<Place>({
code: undefined,
name: undefined,
text: undefined,
image: undefined,
hidden: undefined,
applications: undefined,
doors: undefined,
keys: undefined,
mode: 'mini-add',
})
async function getScenario(id: number) {
const res = await client.GetScenario({ id: id })
if (res.error != '') {
@@ -106,10 +94,25 @@ function uint8ToBase64(uint8Array: Uint8Array) {
return btoa(binaryString)
}
const code = ref('')
const name = ref('')
const text = ref('')
const mode = ref('mini-add')
async function addPlace() {
const res = await client.AddScenarioPlace({
id: scenario.value.id,
place: newPlace.value,
place: {
code: code.value,
name: name.value,
text: text.value,
image: undefined,
hidden: undefined,
applications: undefined,
doors: undefined,
keys: undefined,
},
})
if (res.error != '') {
message.error(res.error!)
@@ -117,17 +120,10 @@ async function addPlace() {
}
await getScenario(Number(scenarioId))
newPlace.value = {
code: undefined,
name: undefined,
text: undefined,
image: undefined,
hidden: undefined,
applications: undefined,
doors: undefined,
keys: undefined,
mode: 'add'
}
code.value = ''
name.value = ''
text.value = ''
mode.value = 'add'
}
async function addNotFoundDoors(scenario: Scenario, place: Place) {
@@ -208,10 +204,14 @@ async function deletePlace(place: Place) {
</n-button>
</div>
<PlaceBlock :place="newPlace" v-model:mode="newPlace.mode">
{{ code }}
{{ name }}
{{ text }}
<PlaceBlock v-model:mode="mode" v-model:newPlaceCode="code" v-model:newPlaceName="name"
v-model:newPlaceText="text">
<n-flex justify="end">
<n-button @click="collapseAddPlace(newPlace)">Отмена</n-button>
<n-button @click="addPlace()" :disabled="!newPlace.code">Добавить точку</n-button>
<n-button @click="mode = 'add'">Отмена</n-button>
<n-button @click="addPlace()" :disabled="!code">Добавить точку</n-button>
</n-flex>
</PlaceBlock>