Browse Source

更新

master
j1ack 2 years ago
parent
commit
28fd8e57e8
  1. 3
      .env.development
  2. 3
      .env.production
  3. 18
      build/[fallback].variant.js
  4. 12
      build/absolute_logo.variant.js
  5. 12
      build/dynamic_logo.variant.js
  6. 12
      build/merchant_1.variant.js
  7. 12
      build/static_logo.variant.js
  8. 7
      package.json
  9. 11
      src/App.vue
  10. 2
      src/assets/styles/sidebar.scss
  11. 6
      src/layout/components/Sidebar/Logo.vue
  12. 2
      src/main.js
  13. 19
      src/utils/variant.js
  14. 26
      src/views/login.vue
  15. 3
      src/views/pay/payOrder/payMoneyWater.vue
  16. 37
      vue.config.js
  17. BIN
      正式.zip

3
.env.development

@ -1,3 +1,6 @@
# 页面标题
VUE_APP_TITLE = 7UP PAY
# 开发环境配置
ENV = 'development'

3
.env.production

@ -1,3 +1,6 @@
# 页面标题
VUE_APP_TITLE = 7UP PAY
# 生产环境配置
ENV = 'production'

18
build/[fallback].variant.js

@ -0,0 +1,18 @@
// 图片资源均支持一下几种定义方式
// 支持绝对路径 https://www.xx.com/static/logo.png
// 支持相对路径 /static/logo.png 使用相对路径时以 public 文件夹作为根路径
// 支持动态资源 file:logo.png 使用动态资源仅支持访问 assets 下的文件, `file:logo.png` 在代码中被转换为 require("@/assets/logo.png")
// 如果未传入 variant 则使用 fallback.variant.js 文件作为默认变体
module.exports = {
// 网站标题
PAGE_TITLE: "7UP PAY",
// 网站图标资源(图片资源)
PAGE_LOGO_URI: "/favicon.ico",
// 登录页面标题
SIGN_UP_TITLE: "7up-pay 后台系统",
// 侧边栏图片资源(图片资源)
SIDEBAR_TITLE_IMAGE_URI: "file:logo/logo.png",
// 侧边栏标题
SIDEBAR_TITLE: "7UP PAY",
}

12
build/absolute_logo.variant.js

@ -0,0 +1,12 @@
module.exports = {
// 网站标题
PAGE_TITLE: "7UP PAY absolute_logo",
// 网站图标资源(图片资源)
PAGE_LOGO_URI: "https://cdn-static.sspai.com/favicon/sspai.ico",
// 登录页面标题
SIGN_UP_TITLE: "7up-pay 后台系统 来自 absolute_logo",
// 侧边栏图片资源(图片资源)
SIDEBAR_TITLE_IMAGE_URI: "https://cdn.sspai.com/2023/3/21/article/8dfc0f27-9889-8665-6b65-c69e8c81aa9d.png",
// 侧边栏标题
SIDEBAR_TITLE: "7UP PAY 来自 absolute_logo",
}

12
build/dynamic_logo.variant.js

@ -0,0 +1,12 @@
module.exports = {
// 网站标题
PAGE_TITLE: "7UP PAY dynamic_logo",
// 网站图标资源(图片资源)
PAGE_LOGO_URI: "file:404_images/404_cloud.png",
// 登录页面标题
SIGN_UP_TITLE: "7up-pay 后台系统 来自 dynamic_logo",
// 侧边栏图片资源(图片资源)
SIDEBAR_TITLE_IMAGE_URI: "file:404_images/404_cloud.png",
// 侧边栏标题
SIDEBAR_TITLE: "7UP PAY 来自 dynamic_logo",
}

12
build/merchant_1.variant.js

@ -0,0 +1,12 @@
module.exports = {
// 网站标题
PAGE_TITLE: "7UP PAY",
// 网站图标资源(图片资源)
PAGE_LOGO_URI: "/favicon.ico",
// 登录页面标题
SIGN_UP_TITLE: "7up-pay 后台系统",
// 侧边栏图片资源(图片资源)
SIDEBAR_TITLE_IMAGE_URI: "file:logo/logo.png",
// 侧边栏标题
SIDEBAR_TITLE: "7UP PAY",
}

12
build/static_logo.variant.js

@ -0,0 +1,12 @@
module.exports = {
// 网站标题
PAGE_TITLE: "7UP PAY 来自 static_logo",
// 网站图标资源(图片资源)
PAGE_LOGO_URI: "/logo.jpeg",
// 登录页面标题
SIGN_UP_TITLE: "7up-pay 后台系统 来自 static_logo",
// 侧边栏图片资源(图片资源)
SIDEBAR_TITLE_IMAGE_URI: "/logo.jpeg",
// 侧边栏标题
SIDEBAR_TITLE: "7UP PAY 来自 static_logo",
}

7
package.json

@ -6,8 +6,13 @@
"license": "MIT",
"scripts": {
"dev": "vue-cli-service serve",
"dev:staging": "vue-cli-service serve --mode staging",
"dev:staging:merchant_1": "vue-cli-service serve --mode staging --variant merchant_1",
"build:development": "vue-cli-service build --mode development",
"build:prod": "vue-cli-service build",
"build:stage": "vue-cli-service build --mode staging",
"build:staging": "vue-cli-service build --mode staging",
"build:all": "npm run build:staging && npm run build:prod",
"build:staging:merchant_1": "vue-cli-service build --mode staging --variant merchant_1",
"preview": "node build/index.js --preview",
"lint": "eslint --ext .js,.vue src"
},

11
src/App.vue

@ -7,15 +7,24 @@
<script>
import ThemePicker from "@/components/ThemePicker";
import appVariant from "@/utils/variant";
export default {
name: "App",
components: { ThemePicker },
created () {
const link = document.querySelector("link[rel*='icon']") || document.createElement('link');
link.type = 'image/x-icon';
link.rel = 'shortcut icon';
link.href = appVariant.PAGE_LOGO_URI;
document.getElementsByTagName('head')[0].appendChild(link);
},
metaInfo() {
return {
title: this.$store.state.settings.dynamicTitle && this.$store.state.settings.title,
titleTemplate: title => {
return title ? `${title} - ${process.env.VUE_APP_TITLE}` : process.env.VUE_APP_TITLE
// return title ? `${title} - ${process.env.VUE_APP_TITLE}` : process.env.VUE_APP_TITLE
return title ? `${title} - ${appVariant.PAGE_TITLE}` : appVariant.PAGE_TITLE
}
}
}

2
src/assets/styles/sidebar.scss

@ -1,3 +1,5 @@
@import './variables.scss';
#app {
.main-container {

6
src/layout/components/Sidebar/Logo.vue

@ -16,7 +16,7 @@
<script>
import logoImg from '@/assets/logo/logo.png'
import variables from '@/assets/styles/variables.scss'
import appVariant from "@/utils/variant";
export default {
name: 'SidebarLogo',
props: {
@ -35,8 +35,8 @@ export default {
},
data() {
return {
title: '7UP PAY',
logo: logoImg
title: appVariant.SIDEBAR_TITLE,
logo: appVariant.SIDEBAR_TITLE_IMAGE_URI
}
}
}

2
src/main.js

@ -37,6 +37,7 @@ import DictTag from '@/components/DictTag'
import VueMeta from 'vue-meta'
// 字典数据组件
import DictData from '@/components/DictData'
import appVariant from "@/utils/variant";
import VueClipboard from 'vue-clipboard2'
Vue.use(VueClipboard)
@ -57,6 +58,7 @@ Vue.prototype.handleTree = handleTree
Vue.prototype.msgSuccess = function (msg) {
this.$message({ showClose: true, message: msg, type: "success" });
}
Vue.prototype.$appVariant = appVariant
// 表格的高度
Vue.prototype.tableHeight = document.documentElement.scrollHeight - 245 + "px",
// 全局组件挂载

19
src/utils/variant.js

@ -0,0 +1,19 @@
const parseImage = (image) => {
if (image.startsWith("file")) {
const path = image.split(":")[1]
const startsWithSlash = path.startsWith("/")
return require(`@/assets/` + (startsWithSlash ? path.slice(1) : path))
}
return image;
}
const appVariant = {
// 网站标题
PAGE_TITLE: APP_VARIANT_DEFINED.PAGE_TITLE,
PAGE_LOGO_URI: parseImage(APP_VARIANT_DEFINED.PAGE_LOGO_URI),
SIGN_UP_TITLE: APP_VARIANT_DEFINED.SIGN_UP_TITLE,
SIDEBAR_TITLE_IMAGE_URI: parseImage(APP_VARIANT_DEFINED.SIDEBAR_TITLE_IMAGE_URI),
SIDEBAR_TITLE: APP_VARIANT_DEFINED.SIDEBAR_TITLE,
}
export default appVariant;

26
src/views/login.vue

@ -1,7 +1,7 @@
<template>
<div class="login">
<el-form ref="loginForm" :model="loginForm" :rules="loginRules" class="login-form">
<h3 class="title">7up-pay后台系统</h3>
<h3 class="title">{{ $appVariant.SIGN_UP_TITLE }}</h3>
<el-form-item prop="username">
<el-input v-model="loginForm.username" type="text" auto-complete="off" placeholder="后台账号">
<!-- <svg-icon slot="prefix" icon-class="user" class="el-input__icon input-icon" /> -->
@ -157,19 +157,27 @@ export default {
this.$refs.loginForm.validate(valid => {
if (valid) {
this.loading = true;
if (this.loginForm.rememberMe) {
Cookies.set("tenantCode", this.loginForm.tenantCode, {
// if (this.loginForm.rememberMe) {
// Cookies.set("tenantCode", this.loginForm.tenantCode, {
// expires: 30
// });
// Cookies.set("username", this.loginForm.username, { expires: 30 });
// Cookies.set("password", encrypt(this.loginForm.password), { expires: 30 });
// Cookies.set('rememberMe', this.loginForm.rememberMe, { expires: 30 });
// } else {
// Cookies.remove("tenantCode");
// Cookies.remove("username");
// Cookies.remove("password");
// Cookies.remove('rememberMe');
// }
Cookies.set("tenantCode", this.loginForm.tenantCode, {
expires: 30
});
Cookies.set("username", this.loginForm.username, { expires: 30 });
Cookies.set("password", encrypt(this.loginForm.password), { expires: 30 });
Cookies.set('rememberMe', this.loginForm.rememberMe, { expires: 30 });
} else {
Cookies.remove("tenantCode");
Cookies.remove("username");
Cookies.remove("password");
Cookies.remove('rememberMe');
}
this.$store.dispatch("Login", this.loginForm).then(() => {
this.$router.push({ path: this.redirect || "/" }).catch(() => { });
}).catch(() => {

3
src/views/pay/payOrder/payMoneyWater.vue

@ -100,7 +100,8 @@
scope.row.witType == 'transfer' ? '资金划转' :
scope.row.witType == 'unfrozen' ? '解冻' :
scope.row.witType == 'withdrawals_frozen' ? '冻结出款' :
scope.row.witType == 'agent_divide' ? '代理分成'
scope.row.witType == 'agent_divide' ? '代理分成' :
scope.row.witType == 'income' ? '收益'
:'后台修改'
}}
</template>

37
vue.config.js

@ -5,9 +5,39 @@ function resolve(dir) {
return path.join(__dirname, dir)
}
function tryGetVariantFromEnv() {
// 从 argv 获取 variant 参数
const args = process.argv.slice(2);
let variant;
// 从 npm run dev -- --variant=xx 取
let variantItem = args.find(element => element.startsWith("--variant="));
if (variantItem) {
variant = variantItem.split("=")[1]
}
// 从 vue-cli-service serve --mode staging --variant merchant_1 取
let variantIndex = args.indexOf('--variant');
if (variantIndex !== -1 && args[variantIndex + 1]) {
variant = args[variantIndex + 1];
}
if (variant) {
try {
const o = require(`./build/${variant}.variant`);
return o;
} catch (e) {
console.error(`未获取到 ${variant} 变体, 检查是否存在 /build/${variant}.variant.js 文件`);
}
}
return require("./build/[fallback].variant");
}
const APP_VARIANT_DEFINED = tryGetVariantFromEnv();
const CompressionPlugin = require('compression-webpack-plugin')
const name = process.env.VUE_APP_TITLE || '7UP PAY' // 网页标题
const name = APP_VARIANT_DEFINED.PAGE_TITLE // 网页标题
const port = process.env.port || process.env.npm_config_port || 80 // 端口
@ -90,6 +120,11 @@ module.exports = {
})
.end()
config.plugin('define').tap(definitions => {
definitions[0].APP_VARIANT_DEFINED = JSON.stringify(APP_VARIANT_DEFINED)
return definitions
})
config
.when(process.env.NODE_ENV !== 'development',
config => {

BIN
正式.zip

Binary file not shown.
Loading…
Cancel
Save