121212
This commit is contained in:
105
Web/src/pages/business/equmake.vue
Normal file
105
Web/src/pages/business/equmake.vue
Normal file
@@ -0,0 +1,105 @@
|
||||
<template>
|
||||
<div class="content">
|
||||
【打造装备】<Abutton @click="showPaper = true">选择</Abutton> <br>
|
||||
</div>
|
||||
<div class="content">
|
||||
<div v-if="useGoods.goodsId != undefined">
|
||||
|
||||
<div class="common">
|
||||
➥当前选择:{{ useGoods.goodsName }}
|
||||
</div>
|
||||
<div class="common">
|
||||
<strong>打造所需</strong>:<br>
|
||||
<GamePropVerify :data="verifyData.needs"></GamePropVerify>
|
||||
</div>
|
||||
<div class="common" v-if="verifyData.result == true">
|
||||
[<Abutton @click="MakeEqu">立即打造</Abutton>]
|
||||
</div>
|
||||
</div>
|
||||
<div v-else>
|
||||
暂未选择打造图.
|
||||
</div>
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
<div class="content" style="font-size: 15px;">
|
||||
说明:<br>
|
||||
1.使用打造图后,随机获得一件装备,装备等级按照打造图纸中的说明。<br>
|
||||
2.打造出的装备无需鉴定。<br>
|
||||
3.打造方式先选择打造图纸,然后收集足够的材料即可完成打造。
|
||||
</div>
|
||||
|
||||
<GamePopup v-model:show="showPaper" title="【选择图纸】" style="width: 60%;max-height: 30%;">
|
||||
<!-- 自定义内容 -->
|
||||
<div class="content" style="margin-top: 15px;">
|
||||
<div v-if="goods.length == 0">
|
||||
暂无图纸.
|
||||
</div>
|
||||
<div class="item" v-for="(item, index) in goods" :key="index">
|
||||
{{ index + 1 }}.<Abutton @click="ChoosePaper(item.goods)">{{ item.goods.goodsName }}</Abutton>({{
|
||||
item.count }})
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</GamePopup>
|
||||
</template>
|
||||
<script setup lang="ts">
|
||||
|
||||
definePageMeta({
|
||||
layout: layout.default,
|
||||
middleware: 'page-loading'
|
||||
})
|
||||
const goods = ref<Array<any>>([]);
|
||||
const useGoods = ref<any>({});
|
||||
const verifyData = ref<any>({});
|
||||
const needs = ref<Array<any>>([]);
|
||||
|
||||
onMounted(async () => {
|
||||
try {
|
||||
await BindData();
|
||||
}
|
||||
finally {
|
||||
PageLoading.Close();
|
||||
}
|
||||
})
|
||||
const BindData = async (): Promise<void> => {
|
||||
let result = await BusinessService.GetEquPaper();
|
||||
if (result.code == 0) {
|
||||
goods.value = result.data;
|
||||
}
|
||||
else {
|
||||
MessageExtend.ShowDialog("装备打造", result.msg);
|
||||
}
|
||||
};
|
||||
|
||||
const showPaper = ref(false);
|
||||
|
||||
const ChoosePaper = async (data: any) => {
|
||||
useGoods.value = data;
|
||||
MessageExtend.LoadingToast("操作中...");
|
||||
let result = await BagService.CheckUserProp(0, 1, data.content);
|
||||
MessageExtend.LoadingClose();
|
||||
if (result.code == 0) {
|
||||
verifyData.value = result.data;
|
||||
needs.value = verifyData.value.needs;
|
||||
showPaper.value = false;
|
||||
}
|
||||
else {
|
||||
MessageExtend.ShowDialog("选择图纸", result.msg);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
const MakeEqu = async () => {
|
||||
MessageExtend.LoadingToast("打造中...");
|
||||
let npcId = LocalStorageHelper.GetOnNpc();
|
||||
let result = await BusinessService.HandleEquPaper(Number(npcId), useGoods.value.goodsId);
|
||||
MessageExtend.LoadingClose();
|
||||
if (result.code == 0) {
|
||||
return PageExtend.Redirect("/prop/equ?ue=" + result.data);
|
||||
}
|
||||
else {
|
||||
MessageExtend.ShowDialog("打造装备", result.msg);
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
71
Web/src/pages/business/retEqu.vue
Normal file
71
Web/src/pages/business/retEqu.vue
Normal file
@@ -0,0 +1,71 @@
|
||||
<template>
|
||||
<div class="content">
|
||||
【修复装备】
|
||||
</div>
|
||||
<div class="content">
|
||||
请选择:
|
||||
<div v-if="equData.length > 0">
|
||||
<span v-if="allCopper > 0">
|
||||
➛<Abutton @click="retEqu('')">全部修复({{ allCopper }}铜)</Abutton>
|
||||
</span>
|
||||
<div class="item" v-for="(item, index) in equData" :key="index">
|
||||
{{ index + 1 }}.<GameEqu :equ-data="item" :show-lev="1" :show-url="true"></GameEqu>
|
||||
<span>({{ item.durability }}/{{ item.maxdurability }})</span>
|
||||
<span v-if="item.durability < item.maxdurability">
|
||||
[<Abutton @click="retEqu(item.ueId)">修复({{ item.maxdurability - item.durability }}铜)</Abutton>]
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else>
|
||||
暂无穿戴中的装备.
|
||||
</div>
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
<div class="content" style="font-size: 16px;">
|
||||
说明:<br>
|
||||
1.装备仅可修复当前穿戴中的装备。<br>
|
||||
2.每修复1点耐久消耗1铜贝。
|
||||
</div>
|
||||
</template>
|
||||
<script setup lang="ts">
|
||||
|
||||
definePageMeta({
|
||||
layout: layout.default,
|
||||
middleware: 'page-loading'
|
||||
})
|
||||
const equData = ref<Array<any>>([]);
|
||||
const allCopper = ref(0);
|
||||
onMounted(async () => {
|
||||
try {
|
||||
await BindData();
|
||||
}
|
||||
finally {
|
||||
PageLoading.Close();
|
||||
}
|
||||
})
|
||||
const BindData = async (): Promise<void> => {
|
||||
let npcId = LocalStorageHelper.GetOnNpc();
|
||||
let result = await RecoverService.GetUserRecoverEqu(Number(npcId));
|
||||
if (result.code == 0) {
|
||||
equData.value = result.data.data;
|
||||
allCopper.value = result.data.need;
|
||||
}
|
||||
else {
|
||||
MessageExtend.ShowDialog("强化装备", result.msg);
|
||||
}
|
||||
};
|
||||
|
||||
const retEqu = async (ueId: string) => {
|
||||
let npcId = LocalStorageHelper.GetOnNpc();
|
||||
MessageExtend.LoadingToast("修复中...");
|
||||
let result = await RecoverService.RecoverEqu(Number(npcId), ueId);
|
||||
MessageExtend.LoadingClose();
|
||||
if (result.code == 0) {
|
||||
MessageExtend.Notify(result.msg, "success");
|
||||
await BindData();
|
||||
}
|
||||
else {
|
||||
MessageExtend.ShowDialog("提示", result.msg);
|
||||
}
|
||||
}
|
||||
</script>
|
||||
Reference in New Issue
Block a user