Browse Source

复制账号,登录

master
linquan 1 month ago
parent
commit
05907eb39b
  1. 85
      src/views/gameManage/copyUnit/index.vue
  2. 14
      src/views/gameOrder/rechargeControl/index.vue
  3. 2
      src/views/login/component/email.vue
  4. 10
      src/views/login/index.vue

85
src/views/gameManage/copyUnit/index.vue

@ -48,6 +48,18 @@
<div v-else>下载仓库json数据</div> <div v-else>下载仓库json数据</div>
</el-button> </el-button>
</el-form-item> </el-form-item>
<el-form-item inlist="true">
<el-button size="default" type="primary" @click="onDownload(deadFilename)" v-if="!disabled" :loading="loading2">
<div v-if="loading2">正在复制村民</div>
<div v-else>下载村民json数据</div>
</el-button>
</el-form-item>
<el-form-item inlist="true">
<el-button size="default" type="primary" @click="onDownload(decorationFilename)" v-if="!disabled" :loading="loading3">
<div v-if="loading3">正在复制装饰</div>
<div v-else>下载装饰json数据</div>
</el-button>
</el-form-item>
</el-form> </el-form>
</div> </div>
</div> </div>
@ -78,14 +90,14 @@
:on-change="handleChange" :on-change="handleChange"
:before-remove="beforeRemove" :before-remove="beforeRemove"
multiple multiple
:limit="2" :limit="4"
:on-exceed="handleExceed" :on-exceed="handleExceed"
:file-list="fileList" :file-list="fileList"
> >
<el-button size="small" type="primary">点击上传</el-button> <el-button size="small" type="primary">点击上传</el-button>
只能上传Json文件 只能上传Json文件
</el-upload> </el-upload>
<el-form-item label="文件名称"> <el-form-item label="unit文件名称">
<el-select v-model="tableData.data.filename" class="m-2" placeholder="选择载入文件" style="width: 300px" filterable> <el-select v-model="tableData.data.filename" class="m-2" placeholder="选择载入文件" style="width: 300px" filterable>
<el-option v-for="item in tableData.fileNames" :key="item" :label="item" :value="item" /> <el-option v-for="item in tableData.fileNames" :key="item" :label="item" :value="item" />
</el-select> </el-select>
@ -95,6 +107,16 @@
<el-option v-for="item in tableData.fileNames" :key="item" :label="item" :value="item" /> <el-option v-for="item in tableData.fileNames" :key="item" :label="item" :value="item" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="村民文件名称">
<el-select v-model="tableData.data.deadFilename" class="m-2" placeholder="选择载入文件" style="width: 300px" filterable>
<el-option v-for="item in tableData.fileNames" :key="item" :label="item" :value="item" />
</el-select>
</el-form-item>
<el-form-item label="装饰文件名称">
<el-select v-model="tableData.data.decorationFilename" class="m-2" placeholder="选择载入文件" style="width: 300px" filterable>
<el-option v-for="item in tableData.fileNames" :key="item" :label="item" :value="item" />
</el-select>
</el-form-item>
<el-form-item label="目标账号"> <el-form-item label="目标账号">
<el-input v-model="tableData.data.DestName" placeholder="请填写uid" class="w-50 m-2" clearable /> <el-input v-model="tableData.data.DestName" placeholder="请填写uid" class="w-50 m-2" clearable />
</el-form-item> </el-form-item>
@ -199,6 +221,8 @@ const baseURL: string | undefined | boolean = import.meta.env.VITE_API_URL;
interface TableData { interface TableData {
filename: string; filename: string;
storeFilename: string; storeFilename: string;
deadFilename: string;
decorationFilename: string;
SrcName: number; SrcName: number;
SrcServer: number; SrcServer: number;
DestName: string; DestName: string;
@ -231,15 +255,21 @@ interface TableDataState {
disabled: boolean; disabled: boolean;
loading: boolean; loading: boolean;
loading1: boolean; loading1: boolean;
loading2: boolean;
loading3: boolean;
fileList: object[]; fileList: object[];
filename: string; filename: string;
storeFilename: string; storeFilename: string;
deadFilename: string;
decorationFilename: string;
serverSwitch: number; serverSwitch: number;
serverCategorize: object; serverCategorize: object;
} }
var timeInterval; var timeInterval;
var timeInterval1; var timeInterval1;
var timeInterval2;
var timeInterval3;
export default defineComponent({ export default defineComponent({
name: 'apiV1GameMangeCopyUnit', name: 'apiV1GameMangeCopyUnit',
setup() { setup() {
@ -272,8 +302,12 @@ export default defineComponent({
disabled: true, disabled: true,
loading: false, loading: false,
loading1: false, loading1: false,
loading2: false,
loading3: false,
filename: '', filename: '',
storeFilename: '', storeFilename: '',
deadFilename: '',
decorationFilename: '',
serverCategorize: ServerCategorize, serverCategorize: ServerCategorize,
}); });
const handleRemove = (file, fileList) => { const handleRemove = (file, fileList) => {
@ -284,14 +318,14 @@ export default defineComponent({
}; };
const handleExceed = (files, fileList) => { const handleExceed = (files, fileList) => {
console.log('handleExceed: ', files, fileList); console.log('handleExceed: ', files, fileList);
warn(`当前限制选择 1 个文件,本次选择了 ${files.length} 个文件,共选择了 ${files.length + fileList.length} 个文件`); warn(`当前限制选择 4 个文件,本次选择了 ${files.length} 个文件,共选择了 ${files.length + fileList.length} 个文件`);
}; };
const handleChange = (files, fileList) => { const handleChange = (files, fileList) => {
console.log('handleChange: ', files, fileList); console.log('handleChange: ', files, fileList);
if (state.tableData.fileNames.indexOf(files.name) >= 0) { if (state.tableData.fileNames.indexOf(files.name) >= 0) {
return; return;
} }
warn(`当前限制选择 1 个文件,本次选择了 ${files.length} 个文件,共选择了 ${files.length + fileList.length} 个文件`); warn(`当前限制选择 4 个文件,本次选择了 ${files.length} 个文件,共选择了 ${files.length + fileList.length} 个文件`);
state.tableData.data.filename = files.name; state.tableData.data.filename = files.name;
state.tableData.fileNames.push(files.name); state.tableData.fileNames.push(files.name);
}; };
@ -301,10 +335,10 @@ export default defineComponent({
}; };
const copyUnit = () => { const copyUnit = () => {
console.log('state.tableData.data: ', state.tableData.data); console.log('state.tableData.data: ', state.tableData.data);
// ElMessage.success('使');
// return
state.loading = true; state.loading = true;
state.loading1 = true; state.loading1 = true;
state.loading2 = true;
state.loading3 = true;
state.disabled = false; state.disabled = false;
gameGMCopyUnit({ gameGMCopyUnit({
SrcName: state.tableData.data.SrcName, SrcName: state.tableData.data.SrcName,
@ -315,35 +349,46 @@ export default defineComponent({
console.log('copy: ', res); console.log('copy: ', res);
state.tableData.data.filename = res.data.filename; state.tableData.data.filename = res.data.filename;
state.tableData.data.storeFilename = res.data.storeFilename; state.tableData.data.storeFilename = res.data.storeFilename;
state.tableData.data.deadFilename = res.data.deadFilename;
state.tableData.data.decorationFilename = res.data.decorationFilename;
state.tableData.fileNames.push(res.data.filename); state.tableData.fileNames.push(res.data.filename);
state.tableData.fileNames.push(res.data.storeFilename); state.tableData.fileNames.push(res.data.storeFilename);
state.tableData.fileNames.push(res.data.deadFilename);
state.tableData.fileNames.push(res.data.decorationFilename);
if (res.data.filename != '') { if (res.data.filename != '') {
state.filename = res.data.filename; state.filename = res.data.filename;
state.storeFilename = res.data.storeFilename; state.storeFilename = res.data.storeFilename;
state.deadFilename = res.data.deadFilename;
state.decorationFilename = res.data.decorationFilename;
console.log('gameRandomGenerateCode: ', res, state.filename, state.storeFilename); console.log('gameRandomGenerateCode: ', res, state.filename, state.storeFilename, state.deadFilename, state.decorationFilename);
timeInterval = setInterval(function () { timeInterval = setInterval(function () {
checkGiftExchangeExists(); checkGiftExchangeExists();
}, 1000); }, 1000);
timeInterval1 = setInterval(function () { timeInterval1 = setInterval(function () {
checkGiftExchangeExists1(); checkGiftExchangeExists1();
}, 1000); }, 1000);
timeInterval2 = setInterval(function () {
checkGiftExchangeExists2();
}, 1000);
timeInterval3 = setInterval(function () {
checkGiftExchangeExists3();
}, 1000);
} }
}) })
.catch(() => { .catch(() => {
state.disabled = true; state.disabled = true;
}) })
.finally(() => { .finally(() => {});
});
}; };
const updateUnit = () => { const updateUnit = () => {
console.log('state.tableData.data: ', state.tableData.data); console.log('state.tableData.data: ', state.tableData.data);
// ElMessage.success('使');
// return
gameGMUpdateUnit({ gameGMUpdateUnit({
filename: state.tableData.data.filename, filename: state.tableData.data.filename,
storeFilename: state.tableData.data.storeFilename, storeFilename: state.tableData.data.storeFilename,
deadFilename: state.tableData.data.deadFilename,
decorationFilename: state.tableData.data.decorationFilename,
DestName: state.tableData.data.DestName, DestName: state.tableData.data.DestName,
DestServer: state.tableData.data.DestServer, DestServer: state.tableData.data.DestServer,
}) })
@ -412,6 +457,24 @@ export default defineComponent({
} }
}); });
}; };
const checkGiftExchangeExists2 = () => {
giftExchangeExists({ file: state.deadFilename }).then((response) => {
console.log('checkGiftExchangeExists2', state.deadFilename, response);
if (response.data.state == 1) {
clearInterval(timeInterval2);
state.loading2 = false;
}
});
};
const checkGiftExchangeExists3 = () => {
giftExchangeExists({ file: state.decorationFilename }).then((response) => {
console.log('checkGiftExchangeExists3', state.decorationFilename, response);
if (response.data.state == 1) {
clearInterval(timeInterval3);
state.loading3 = false;
}
});
};
const onDownload = (file: string) => { const onDownload = (file: string) => {
if (file) { if (file) {
window.open(baseURL + 'download_file?filename=' + file); window.open(baseURL + 'download_file?filename=' + file);

14
src/views/gameOrder/rechargeControl/index.vue

@ -40,8 +40,6 @@ import { toRefs, reactive, onMounted, defineComponent } from 'vue';
import { gameRechargeControlAdd, gameRechargeControlDelete, gameRechargeControlList } from '/@/api/game/index'; import { gameRechargeControlAdd, gameRechargeControlDelete, gameRechargeControlList } from '/@/api/game/index';
import { channelList, ChannelList } from '/@/utils/game'; import { channelList, ChannelList } from '/@/utils/game';
// import {ElMessageBox} from "element-plus/es";
interface TableData { interface TableData {
id: number; id: number;
channel: string; channel: string;
@ -71,11 +69,6 @@ export default defineComponent({
}); });
}; };
const add = (value: any) => { const add = (value: any) => {
// ElMessageBox.confirm("", '', {
// confirmButtonText: '',
// cancelButtonText: '',
// type: 'warning',
// }).then(() => {
if (value == -1) { if (value == -1) {
for (let i in state.channels) { for (let i in state.channels) {
gameRechargeControlAdd({ channel: state.channels[i].value }) gameRechargeControlAdd({ channel: state.channels[i].value })
@ -93,14 +86,8 @@ export default defineComponent({
getRemain(); getRemain();
}) })
.finally(() => {}); .finally(() => {});
// });
}; };
const del = (value: any) => { const del = (value: any) => {
// ElMessageBox.confirm("", '', {
// confirmButtonText: '',
// cancelButtonText: '',
// type: 'warning',
// }).then(() => {
if (value == -1) { if (value == -1) {
for (let i in state.channels) { for (let i in state.channels) {
gameRechargeControlDelete({ channel: state.channels[i].value }) gameRechargeControlDelete({ channel: state.channels[i].value })
@ -118,7 +105,6 @@ export default defineComponent({
getRemain(); getRemain();
}) })
.finally(() => {}); .finally(() => {});
// });
}; };
onMounted(function () { onMounted(function () {
channelList().then((res) => { channelList().then((res) => {

2
src/views/login/component/email.vue

@ -21,7 +21,7 @@
</el-col> </el-col>
<el-col :span="1"></el-col> <el-col :span="1"></el-col>
<el-col :span="8"> <el-col :span="8">
<el-button class="login-content-code" @click="smsCode" >{{ $t('message.email.codeText') }}</el-button> <el-button class="login-content-code" @click="smsCode">{{ $t('message.email.codeText') }}</el-button>
</el-col> </el-col>
</el-form-item> </el-form-item>
<el-form-item class="login-animation3"> <el-form-item class="login-animation3">

10
src/views/login/index.vue

@ -5,7 +5,7 @@
<div class="login-content-main"> <div class="login-content-main">
<div class="login-icon-group"> <div class="login-icon-group">
<div class="login-icon-group-title"> <div class="login-icon-group-title">
<img :src="logoMini" /> <img :src="logoMini"/>
<div class="login-icon-group-title-text font25"> <div class="login-icon-group-title-text font25">
{{ getThemeConfig.globalViceTitle }} {{ getThemeConfig.globalViceTitle }}
<div class="font15">{{ getThemeConfig.globalSubheading }}</div> <div class="font15">{{ getThemeConfig.globalSubheading }}</div>
@ -20,7 +20,7 @@
<el-tab-pane :label="$t('message.label.two2')" name="mobile"> <el-tab-pane :label="$t('message.label.two2')" name="mobile">
<Mobile /> <Mobile />
</el-tab-pane> </el-tab-pane>
<el-tab-pane :label="$t('message.label.three3')" name="email"> <el-tab-pane v-if="showEmail" :label="$t('message.label.three3')" name="email">
<Email /> <Email />
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
@ -37,11 +37,11 @@
<div class="login-footer-content mt15"> <div class="login-footer-content mt15">
<div class="login-footer-content-warp"> <div class="login-footer-content-warp">
<div>Copyright © 2021-2023 g-fast.cn All Rights Reserved.</div> <div>Copyright © 2021-2023 g-fast.cn All Rights Reserved.</div>
<div class="mt5">厦门二维塔科技有限公司版权所有</div> <div class="mt5">厦门<span @click="showEmail = !showEmail; tabsActiveName='account'">二维塔科技</span>有限公司版权所有</div>
</div> </div>
</div> </div>
</div> </div>
<!-- <Iocnfonts />--> <!-- <Iocnfonts />-->
</div> </div>
</template> </template>
@ -58,6 +58,7 @@ import logoMini from '/@/assets/ico.webp';
interface LoginState { interface LoginState {
tabsActiveName: string; tabsActiveName: string;
isScan: boolean; isScan: boolean;
showEmail: boolean;
} }
export default defineComponent({ export default defineComponent({
@ -68,6 +69,7 @@ export default defineComponent({
const state = reactive<LoginState>({ const state = reactive<LoginState>({
tabsActiveName: 'account', tabsActiveName: 'account',
isScan: false, isScan: false,
showEmail: false,
}); });
// //
const getThemeConfig = computed(() => { const getThemeConfig = computed(() => {

Loading…
Cancel
Save