- BS估算缓存机制修复

- 快捷功能【快速犯罪】界面优化
This commit is contained in:
Liwanyi 2024-03-29 09:44:06 +08:00
parent 2eb1fbf087
commit 92173c57ec
5 changed files with 53 additions and 30 deletions

View File

@ -1,5 +1,14 @@
# CHANGE
## 1.2.0
2024年03月29日
### 修改
- BS估算缓存机制修复
- 快捷功能【快速犯罪】界面优化
## 1.1.9
2024年03月27日

View File

@ -1,6 +1,6 @@
{
"name": "wuhu-torn-helper",
"version": "1.1.9",
"version": "1.2.0",
"description": "芜湖助手",
"scripts": {
"release": "cross-env NODE_ENV=production rollup -c && node build.mjs",

View File

@ -97,9 +97,13 @@ BS: ${ toThousands(data.total) }<br/>
偏差: ${ data.skewness }%<br/>
估算时间: ${ timePastFormat(Date.now() - data.timestamp * 1000) }
`
}).catch(err => domNode.innerHTML = 'BS估算出错了: ' + err.message)
}).catch(err => {
domNode.innerHTML = 'BS估算出错了: ' + err.message
throw new TypeError('BS估算出错了: ' + err.message)
})
} catch (e) {
this.msgWrapper.create('BS估算失败', null, 'error')
this.msgWrapper.create('BS估算失败' + e.message, null, 'error')
throw new TypeError('BS估算失败' + e.message)
}
}
}

View File

@ -35,7 +35,7 @@ const getCacheObj = () => {
const getCache = (id: number): YataApiDataWrap => {
let cache: YataApiDataWrap = getCacheObj()[id]
if (cache && (Date.now() - cache.timestamp * 1000 > cacheExpireMs)) {
if (cache && ((Date.now() - (cache.timestamp * 1000)) < cacheExpireMs)) {
cache.isCache = true
} else {
cache = null

View File

@ -1,27 +1,37 @@
<template>
<el-row>
<el-col :span="12">
<!-- <el-row>-->
<!-- <el-col :span="12">-->
<div class="mt-4">
<el-space>
<el-button-group>
<el-button @click="doCrime(11, 'warehouse')">烧仓库</el-button>
<el-button @click="doCrime(15, 'napcop')">做15-3</el-button>
<el-button @click="doCrime(18, 'hackbank')">做18-1</el-button>
</el-button-group>
</el-col>
<el-col :span="12">
<!-- </el-col>-->
<!-- <el-col :span="12">-->
<el-button type="primary" @click="doYouLikeABeer()">🍺 你喜欢啤酒吗</el-button>
</el-col>
</el-row>
<el-row>
</el-space>
</div>
<!-- </el-col>-->
<!-- </el-row>-->
<!-- <el-row>-->
<div class="mt-4">
<el-space>
<el-cascader v-model="crimeSelected" :options="CrimeData" :show-all-levels="false" clearable
placeholder="选择其他"/>
<el-button :disabled="!(crimeSelected && crimeSelected.length)"
:icon="Coffee"
round type="danger" @click="doCrime(crimeSelected[0], crimeSelected[1])">
</el-button>
</el-row>
<div>
</el-space>
</div>
<!-- </el-row>-->
<div class="mt-4">
<el-space>
<el-tag type="primary">NERVE {{ nerve }}</el-tag>
<el-tag type="danger">CD {{ boostCoolDown }}</el-tag>
</el-space>
</div>
<div v-if="responseHtmlString" v-html="responseHtmlString"></div>
<div v-if="results" v-html="results"></div>
@ -29,12 +39,12 @@
</template>
<script lang="ts" setup>
import { Coffee } from "@element-plus/icons-vue";
import { inject, onBeforeUnmount, onMounted, ref } from 'vue';
import { LoggerKey } from "../ts/class/Logger";
import { CrimeData } from "./data/CrimeData";
import { useItemSync } from "../ts/func/utils/useItem";
import getSidebarData from "../ts/func/utils/getSidebarData";
import { Coffee } from "@element-plus/icons-vue"
import { inject, onBeforeUnmount, onMounted, ref } from 'vue'
import { LoggerKey } from "../ts/class/Logger"
import { CrimeData } from "./data/CrimeData"
import { useItemSync } from "../ts/func/utils/useItem"
import getSidebarData from "../ts/func/utils/getSidebarData"
const logger = inject(LoggerKey)
const results = ref("")
@ -45,8 +55,8 @@ const boostCoolDown = ref(0)
const nerve = ref(0)
const doCrime = async (nerve, crime: "hackbank" | "warehouse" | 'napcop') => {
loading.value = true;
results.value = '';
loading.value = true
results.value = ''
try {
results.value = await (await fetch(window.addRFC("https://www.torn.com/crimes.php?step=docrime4&timestamp=" + Date.now()), {
"headers": {
@ -64,22 +74,22 @@ const doCrime = async (nerve, crime: "hackbank" | "warehouse" | 'napcop') => {
"method": "POST",
"mode": "cors",
"credentials": "include"
})).text();
})).text()
} catch (e) {
logger.error(e.stack);
results.value = e.message;
logger.error(e.stack)
results.value = e.message
}
let err: string;
let err: string
try {
err = JSON.parse(results.value).error;
err = JSON.parse(results.value).error
} catch (e) {
}
if (err) {
results.value = '错误: ' + err;
// ElMessage.error(': ' + err);
logger.error(err);
results.value = '错误: ' + err
// ElMessage.error(': ' + err)
logger.error(err)
}
loading.value = false;
loading.value = false
updateData()
}