Compare commits
43 Commits
wwz
...
master-php
| Author | SHA1 | Date | |
|---|---|---|---|
| d2a56965fc | |||
| c20cb8cfbc | |||
| ebf40e35f6 | |||
| 9fcadc1248 | |||
| d34c5a84b8 | |||
| 9e95072685 | |||
| 943ef313cf | |||
| b82eb59b1d | |||
| 842270186a | |||
| 329299a3b5 | |||
| 7744a8112d | |||
| 8054985445 | |||
| bf3dc320c0 | |||
| eb2b6c15f2 | |||
| b711e87f50 | |||
| 3e4ec97803 | |||
| 1cfad99f47 | |||
| de16122ec1 | |||
|
|
2073deec7b | ||
|
|
3a211fc862 | ||
|
|
9ee23afc38 | ||
|
|
6cccadbbce | ||
|
|
1d2862765b | ||
|
|
bf93fea486 | ||
| d1c676336e | |||
| 25dcbea759 | |||
|
|
55af5fd698 | ||
| d5d19e2696 | |||
| 5c5516834e | |||
| 97e8be58c5 | |||
| 99ef49ffc6 | |||
| 15354833e2 | |||
| 21f049f65c | |||
| eb33ef97b1 | |||
| 65d61c5ebc | |||
| 93fb3bc46f | |||
| 95d1eda7a3 | |||
| 67a15a9183 | |||
| 6f83ecd9f9 | |||
| 2c65bfca6a | |||
| c65278cb28 | |||
| 2cd5bb75dd | |||
|
|
2dc98838c7 |
@@ -7,3 +7,9 @@
|
|||||||
- 发布时,可动态配置CDN静态资源/切换新旧版本
|
- 发布时,可动态配置CDN静态资源/切换新旧版本
|
||||||
|
|
||||||
|
|
||||||
|
雷池测试
|
||||||
|
https://47.122.26.160:9443
|
||||||
|
admin kwxpryrq
|
||||||
|
雷池正式
|
||||||
|
https://47.122.73.144:9443/
|
||||||
|
admin Qhs6AogY
|
||||||
|
|||||||
173
config/index.js
173
config/index.js
@@ -1,102 +1,105 @@
|
|||||||
'use strict'
|
"use strict";
|
||||||
// Template version: 1.2.5
|
// Template version: 1.2.5
|
||||||
// see http://vuejs-templates.github.io/webpack for documentation.
|
// see http://vuejs-templates.github.io/webpack for documentation.
|
||||||
|
|
||||||
const path = require('path')
|
const path = require("path");
|
||||||
const devEnv = require('./dev.env')
|
const devEnv = require("./dev.env");
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
dev: {
|
dev: {
|
||||||
// Paths
|
// Paths
|
||||||
assetsSubDirectory: 'static',
|
assetsSubDirectory: "static",
|
||||||
assetsPublicPath: '/',
|
assetsPublicPath: "/",
|
||||||
// 代理列表, 是否开启代理通过[./dev.env.js]配置
|
// 代理列表, 是否开启代理通过[./dev.env.js]配置
|
||||||
proxyTable: devEnv.OPEN_PROXY === false ? {} : {
|
proxyTable:
|
||||||
'/czg': {
|
devEnv.OPEN_PROXY === false
|
||||||
// target: 'http://192.168.0.132:8100/czg/',
|
? {}
|
||||||
// target: 'https://duanjuadmin.xianmxkj.com/czg/',
|
: {
|
||||||
target: 'http://127.0.0.1/czg/',
|
"/czg": {
|
||||||
changeOrigin: true,
|
// target: 'http://192.168.0.132:8100/czg/',
|
||||||
pathRewrite: {
|
// target: 'https://duanjuadmin.xianmxkj.com/czg/',
|
||||||
'^/czg': ''
|
target: "http://127.0.0.1/czg/",
|
||||||
}
|
changeOrigin: true,
|
||||||
},
|
pathRewrite: {
|
||||||
'/weixin': {
|
"^/czg": ""
|
||||||
target: 'https://api.weixin.qq.com/',
|
}
|
||||||
// target: 'https://duanjuadmin.xianmxkj.com/czg/',
|
},
|
||||||
// target: 'http://127.0.0.1/czg/',
|
"/weixin": {
|
||||||
changeOrigin: true,
|
target: "https://api.weixin.qq.com/",
|
||||||
pathRewrite: {
|
// target: 'https://duanjuadmin.xianmxkj.com/czg/',
|
||||||
'^/weixin': ''
|
// target: 'http://127.0.0.1/czg/',
|
||||||
}
|
changeOrigin: true,
|
||||||
},
|
pathRewrite: {
|
||||||
},
|
"^/weixin": ""
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
// Various Dev Server settings
|
// Various Dev Server settings
|
||||||
host: 'localhost', // can be overwritten by process.env.HOST
|
host: "localhost", // can be overwritten by process.env.HOST
|
||||||
port: 8001, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
|
port: 8001, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
|
||||||
autoOpenBrowser: true,
|
autoOpenBrowser: true,
|
||||||
errorOverlay: true,
|
errorOverlay: true,
|
||||||
notifyOnErrors: true,
|
notifyOnErrors: true,
|
||||||
poll: false, // https://webpack.js.org/configuration/dev-server/#devserver-watchoptions-
|
poll: false, // https://webpack.js.org/configuration/dev-server/#devserver-watchoptions-
|
||||||
|
|
||||||
// Use Eslint Loader?
|
// Use Eslint Loader?
|
||||||
// If true, your code will be linted during bundling and
|
// If true, your code will be linted during bundling and
|
||||||
// linting errors and warnings will be shown in the console.
|
// linting errors and warnings will be shown in the console.
|
||||||
useEslint: true,
|
useEslint: true,
|
||||||
// If true, eslint errors and warnings will also be shown in the error overlay
|
// If true, eslint errors and warnings will also be shown in the error overlay
|
||||||
// in the browser.
|
// in the browser.
|
||||||
showEslintErrorsInOverlay: false,
|
showEslintErrorsInOverlay: false,
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Source Maps
|
* Source Maps
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// https://webpack.js.org/configuration/devtool/#development
|
// https://webpack.js.org/configuration/devtool/#development
|
||||||
devtool: 'eval-source-map',
|
devtool: "eval-source-map",
|
||||||
|
|
||||||
// If you have problems debugging vue-files in devtools,
|
// If you have problems debugging vue-files in devtools,
|
||||||
// set this to false - it *may* help
|
// set this to false - it *may* help
|
||||||
// https://vue-loader.vuejs.org/en/options.html#cachebusting
|
// https://vue-loader.vuejs.org/en/options.html#cachebusting
|
||||||
cacheBusting: true,
|
cacheBusting: true,
|
||||||
|
|
||||||
// CSS Sourcemaps off by default because relative paths are "buggy"
|
// CSS Sourcemaps off by default because relative paths are "buggy"
|
||||||
// with this option, according to the CSS-Loader README
|
// with this option, according to the CSS-Loader README
|
||||||
// (https://github.com/webpack/css-loader#sourcemaps)
|
// (https://github.com/webpack/css-loader#sourcemaps)
|
||||||
// In our experience, they generally work as expected,
|
// In our experience, they generally work as expected,
|
||||||
// just be aware of this issue when enabling this option.
|
// just be aware of this issue when enabling this option.
|
||||||
cssSourceMap: false,
|
cssSourceMap: false
|
||||||
},
|
},
|
||||||
|
|
||||||
build: {
|
build: {
|
||||||
// publicPath: '/admin/',
|
// publicPath: '/admin/',
|
||||||
// Template for index.html
|
// Template for index.html
|
||||||
index: path.resolve(__dirname, '../dist/index.html'),
|
index: path.resolve(__dirname, "../dist/index.html"),
|
||||||
|
|
||||||
// Paths
|
// Paths
|
||||||
assetsRoot: path.resolve(__dirname, '../dist'),
|
assetsRoot: path.resolve(__dirname, "../dist"),
|
||||||
assetsSubDirectory: 'static',
|
assetsSubDirectory: "static",
|
||||||
assetsPublicPath: './',
|
assetsPublicPath: "./",
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Source Maps
|
* Source Maps
|
||||||
*/
|
*/
|
||||||
|
|
||||||
productionSourceMap: false,
|
productionSourceMap: false,
|
||||||
// https://webpack.js.org/configuration/devtool/#production
|
// https://webpack.js.org/configuration/devtool/#production
|
||||||
devtool: '#source-map',
|
devtool: "#source-map",
|
||||||
|
|
||||||
// Gzip off by default as many popular static hosts such as
|
// Gzip off by default as many popular static hosts such as
|
||||||
// Surge or Netlify already gzip all static assets for you.
|
// Surge or Netlify already gzip all static assets for you.
|
||||||
// Before setting to `true`, make sure to:
|
// Before setting to `true`, make sure to:
|
||||||
// npm install --save-dev compression-webpack-plugin
|
// npm install --save-dev compression-webpack-plugin
|
||||||
productionGzip: false,
|
productionGzip: false,
|
||||||
productionGzipExtensions: ['js', 'css'],
|
productionGzipExtensions: ["js", "css"],
|
||||||
|
|
||||||
// Run the build command with an extra argument to
|
// Run the build command with an extra argument to
|
||||||
// View the bundle analyzer report after build finishes:
|
// View the bundle analyzer report after build finishes:
|
||||||
// `npm run build --report`
|
// `npm run build --report`
|
||||||
// Set to `true` or `false` to always turn it on or off
|
// Set to `true` or `false` to always turn it on or off
|
||||||
bundleAnalyzerReport: process.env.npm_config_report
|
bundleAnalyzerReport: process.env.npm_config_report
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
|
|||||||
199
package-lock.json
generated
199
package-lock.json
generated
@@ -47,7 +47,7 @@
|
|||||||
},
|
},
|
||||||
"color-convert": {
|
"color-convert": {
|
||||||
"version": "2.0.1",
|
"version": "2.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
|
"resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz",
|
||||||
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
|
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -56,13 +56,13 @@
|
|||||||
},
|
},
|
||||||
"color-name": {
|
"color-name": {
|
||||||
"version": "1.1.4",
|
"version": "1.1.4",
|
||||||
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
|
"resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz",
|
||||||
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
|
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"is-fullwidth-code-point": {
|
"is-fullwidth-code-point": {
|
||||||
"version": "3.0.0",
|
"version": "3.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
|
"resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
|
||||||
"integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
|
"integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
@@ -79,7 +79,7 @@
|
|||||||
},
|
},
|
||||||
"string-width-cjs": {
|
"string-width-cjs": {
|
||||||
"version": "npm:string-width@4.2.3",
|
"version": "npm:string-width@4.2.3",
|
||||||
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
|
"resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz",
|
||||||
"integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
|
"integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -90,19 +90,19 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"ansi-regex": {
|
"ansi-regex": {
|
||||||
"version": "5.0.1",
|
"version": "5.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
|
"resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz",
|
||||||
"integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
|
"integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"emoji-regex": {
|
"emoji-regex": {
|
||||||
"version": "8.0.0",
|
"version": "8.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
|
"resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz",
|
||||||
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
|
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"strip-ansi": {
|
"strip-ansi": {
|
||||||
"version": "6.0.1",
|
"version": "6.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
|
"resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz",
|
||||||
"integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
|
"integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -122,7 +122,7 @@
|
|||||||
},
|
},
|
||||||
"strip-ansi-cjs": {
|
"strip-ansi-cjs": {
|
||||||
"version": "npm:strip-ansi@6.0.1",
|
"version": "npm:strip-ansi@6.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
|
"resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz",
|
||||||
"integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
|
"integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -131,7 +131,7 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"ansi-regex": {
|
"ansi-regex": {
|
||||||
"version": "5.0.1",
|
"version": "5.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
|
"resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz",
|
||||||
"integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
|
"integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
|
||||||
"dev": true
|
"dev": true
|
||||||
}
|
}
|
||||||
@@ -150,7 +150,7 @@
|
|||||||
},
|
},
|
||||||
"wrap-ansi-cjs": {
|
"wrap-ansi-cjs": {
|
||||||
"version": "npm:wrap-ansi@7.0.0",
|
"version": "npm:wrap-ansi@7.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
|
"resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
|
||||||
"integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
|
"integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -161,13 +161,13 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"ansi-regex": {
|
"ansi-regex": {
|
||||||
"version": "5.0.1",
|
"version": "5.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
|
"resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz",
|
||||||
"integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
|
"integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"ansi-styles": {
|
"ansi-styles": {
|
||||||
"version": "4.3.0",
|
"version": "4.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
|
"resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz",
|
||||||
"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
|
"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -176,13 +176,13 @@
|
|||||||
},
|
},
|
||||||
"emoji-regex": {
|
"emoji-regex": {
|
||||||
"version": "8.0.0",
|
"version": "8.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
|
"resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz",
|
||||||
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
|
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"string-width": {
|
"string-width": {
|
||||||
"version": "4.2.3",
|
"version": "4.2.3",
|
||||||
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
|
"resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz",
|
||||||
"integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
|
"integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -193,7 +193,7 @@
|
|||||||
},
|
},
|
||||||
"strip-ansi": {
|
"strip-ansi": {
|
||||||
"version": "6.0.1",
|
"version": "6.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
|
"resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz",
|
||||||
"integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
|
"integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -212,7 +212,7 @@
|
|||||||
},
|
},
|
||||||
"@parcel/watcher": {
|
"@parcel/watcher": {
|
||||||
"version": "2.5.0",
|
"version": "2.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.0.tgz",
|
"resolved": "https://registry.npmmirror.com/@parcel/watcher/-/watcher-2.5.0.tgz",
|
||||||
"integrity": "sha512-i0GV1yJnm2n3Yq1qw6QrUrd/LI9bE8WEBOTtOkpCXHHdyN3TAGgqAK/DAT05z4fq2x04cARXt2pDmjWjL92iTQ==",
|
"integrity": "sha512-i0GV1yJnm2n3Yq1qw6QrUrd/LI9bE8WEBOTtOkpCXHHdyN3TAGgqAK/DAT05z4fq2x04cARXt2pDmjWjL92iTQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true,
|
"optional": true,
|
||||||
@@ -238,7 +238,7 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"braces": {
|
"braces": {
|
||||||
"version": "3.0.3",
|
"version": "3.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
|
"resolved": "https://registry.npmmirror.com/braces/-/braces-3.0.3.tgz",
|
||||||
"integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
|
"integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true,
|
"optional": true,
|
||||||
@@ -248,7 +248,7 @@
|
|||||||
},
|
},
|
||||||
"fill-range": {
|
"fill-range": {
|
||||||
"version": "7.1.1",
|
"version": "7.1.1",
|
||||||
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
|
"resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-7.1.1.tgz",
|
||||||
"integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
|
"integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true,
|
"optional": true,
|
||||||
@@ -258,14 +258,14 @@
|
|||||||
},
|
},
|
||||||
"is-extglob": {
|
"is-extglob": {
|
||||||
"version": "2.1.1",
|
"version": "2.1.1",
|
||||||
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
|
"resolved": "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz",
|
||||||
"integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
|
"integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
"is-glob": {
|
"is-glob": {
|
||||||
"version": "4.0.3",
|
"version": "4.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
|
"resolved": "https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz",
|
||||||
"integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
|
"integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true,
|
"optional": true,
|
||||||
@@ -275,14 +275,14 @@
|
|||||||
},
|
},
|
||||||
"is-number": {
|
"is-number": {
|
||||||
"version": "7.0.0",
|
"version": "7.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
|
"resolved": "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz",
|
||||||
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
|
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
"micromatch": {
|
"micromatch": {
|
||||||
"version": "4.0.8",
|
"version": "4.0.8",
|
||||||
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz",
|
"resolved": "https://registry.npmmirror.com/micromatch/-/micromatch-4.0.8.tgz",
|
||||||
"integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
|
"integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true,
|
"optional": true,
|
||||||
@@ -293,7 +293,7 @@
|
|||||||
},
|
},
|
||||||
"to-regex-range": {
|
"to-regex-range": {
|
||||||
"version": "5.0.1",
|
"version": "5.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
|
"resolved": "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz",
|
||||||
"integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
|
"integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true,
|
"optional": true,
|
||||||
@@ -305,84 +305,84 @@
|
|||||||
},
|
},
|
||||||
"@parcel/watcher-android-arm64": {
|
"@parcel/watcher-android-arm64": {
|
||||||
"version": "2.5.0",
|
"version": "2.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.0.tgz",
|
"resolved": "https://registry.npmmirror.com/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.0.tgz",
|
||||||
"integrity": "sha512-qlX4eS28bUcQCdribHkg/herLe+0A9RyYC+mm2PXpncit8z5b3nSqGVzMNR3CmtAOgRutiZ02eIJJgP/b1iEFQ==",
|
"integrity": "sha512-qlX4eS28bUcQCdribHkg/herLe+0A9RyYC+mm2PXpncit8z5b3nSqGVzMNR3CmtAOgRutiZ02eIJJgP/b1iEFQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
"@parcel/watcher-darwin-arm64": {
|
"@parcel/watcher-darwin-arm64": {
|
||||||
"version": "2.5.0",
|
"version": "2.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.0.tgz",
|
"resolved": "https://registry.npmmirror.com/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.0.tgz",
|
||||||
"integrity": "sha512-hyZ3TANnzGfLpRA2s/4U1kbw2ZI4qGxaRJbBH2DCSREFfubMswheh8TeiC1sGZ3z2jUf3s37P0BBlrD3sjVTUw==",
|
"integrity": "sha512-hyZ3TANnzGfLpRA2s/4U1kbw2ZI4qGxaRJbBH2DCSREFfubMswheh8TeiC1sGZ3z2jUf3s37P0BBlrD3sjVTUw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
"@parcel/watcher-darwin-x64": {
|
"@parcel/watcher-darwin-x64": {
|
||||||
"version": "2.5.0",
|
"version": "2.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.0.tgz",
|
"resolved": "https://registry.npmmirror.com/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.0.tgz",
|
||||||
"integrity": "sha512-9rhlwd78saKf18fT869/poydQK8YqlU26TMiNg7AIu7eBp9adqbJZqmdFOsbZ5cnLp5XvRo9wcFmNHgHdWaGYA==",
|
"integrity": "sha512-9rhlwd78saKf18fT869/poydQK8YqlU26TMiNg7AIu7eBp9adqbJZqmdFOsbZ5cnLp5XvRo9wcFmNHgHdWaGYA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
"@parcel/watcher-freebsd-x64": {
|
"@parcel/watcher-freebsd-x64": {
|
||||||
"version": "2.5.0",
|
"version": "2.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.0.tgz",
|
"resolved": "https://registry.npmmirror.com/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.0.tgz",
|
||||||
"integrity": "sha512-syvfhZzyM8kErg3VF0xpV8dixJ+RzbUaaGaeb7uDuz0D3FK97/mZ5AJQ3XNnDsXX7KkFNtyQyFrXZzQIcN49Tw==",
|
"integrity": "sha512-syvfhZzyM8kErg3VF0xpV8dixJ+RzbUaaGaeb7uDuz0D3FK97/mZ5AJQ3XNnDsXX7KkFNtyQyFrXZzQIcN49Tw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
"@parcel/watcher-linux-arm-glibc": {
|
"@parcel/watcher-linux-arm-glibc": {
|
||||||
"version": "2.5.0",
|
"version": "2.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.0.tgz",
|
"resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.0.tgz",
|
||||||
"integrity": "sha512-0VQY1K35DQET3dVYWpOaPFecqOT9dbuCfzjxoQyif1Wc574t3kOSkKevULddcR9znz1TcklCE7Ht6NIxjvTqLA==",
|
"integrity": "sha512-0VQY1K35DQET3dVYWpOaPFecqOT9dbuCfzjxoQyif1Wc574t3kOSkKevULddcR9znz1TcklCE7Ht6NIxjvTqLA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
"@parcel/watcher-linux-arm-musl": {
|
"@parcel/watcher-linux-arm-musl": {
|
||||||
"version": "2.5.0",
|
"version": "2.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.0.tgz",
|
"resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.0.tgz",
|
||||||
"integrity": "sha512-6uHywSIzz8+vi2lAzFeltnYbdHsDm3iIB57d4g5oaB9vKwjb6N6dRIgZMujw4nm5r6v9/BQH0noq6DzHrqr2pA==",
|
"integrity": "sha512-6uHywSIzz8+vi2lAzFeltnYbdHsDm3iIB57d4g5oaB9vKwjb6N6dRIgZMujw4nm5r6v9/BQH0noq6DzHrqr2pA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
"@parcel/watcher-linux-arm64-glibc": {
|
"@parcel/watcher-linux-arm64-glibc": {
|
||||||
"version": "2.5.0",
|
"version": "2.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.0.tgz",
|
"resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.0.tgz",
|
||||||
"integrity": "sha512-BfNjXwZKxBy4WibDb/LDCriWSKLz+jJRL3cM/DllnHH5QUyoiUNEp3GmL80ZqxeumoADfCCP19+qiYiC8gUBjA==",
|
"integrity": "sha512-BfNjXwZKxBy4WibDb/LDCriWSKLz+jJRL3cM/DllnHH5QUyoiUNEp3GmL80ZqxeumoADfCCP19+qiYiC8gUBjA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
"@parcel/watcher-linux-arm64-musl": {
|
"@parcel/watcher-linux-arm64-musl": {
|
||||||
"version": "2.5.0",
|
"version": "2.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.0.tgz",
|
"resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.0.tgz",
|
||||||
"integrity": "sha512-S1qARKOphxfiBEkwLUbHjCY9BWPdWnW9j7f7Hb2jPplu8UZ3nes7zpPOW9bkLbHRvWM0WDTsjdOTUgW0xLBN1Q==",
|
"integrity": "sha512-S1qARKOphxfiBEkwLUbHjCY9BWPdWnW9j7f7Hb2jPplu8UZ3nes7zpPOW9bkLbHRvWM0WDTsjdOTUgW0xLBN1Q==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
"@parcel/watcher-linux-x64-glibc": {
|
"@parcel/watcher-linux-x64-glibc": {
|
||||||
"version": "2.5.0",
|
"version": "2.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.0.tgz",
|
"resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.0.tgz",
|
||||||
"integrity": "sha512-d9AOkusyXARkFD66S6zlGXyzx5RvY+chTP9Jp0ypSTC9d4lzyRs9ovGf/80VCxjKddcUvnsGwCHWuF2EoPgWjw==",
|
"integrity": "sha512-d9AOkusyXARkFD66S6zlGXyzx5RvY+chTP9Jp0ypSTC9d4lzyRs9ovGf/80VCxjKddcUvnsGwCHWuF2EoPgWjw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
"@parcel/watcher-linux-x64-musl": {
|
"@parcel/watcher-linux-x64-musl": {
|
||||||
"version": "2.5.0",
|
"version": "2.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.0.tgz",
|
"resolved": "https://registry.npmmirror.com/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.0.tgz",
|
||||||
"integrity": "sha512-iqOC+GoTDoFyk/VYSFHwjHhYrk8bljW6zOhPuhi5t9ulqiYq1togGJB5e3PwYVFFfeVgc6pbz3JdQyDoBszVaA==",
|
"integrity": "sha512-iqOC+GoTDoFyk/VYSFHwjHhYrk8bljW6zOhPuhi5t9ulqiYq1togGJB5e3PwYVFFfeVgc6pbz3JdQyDoBszVaA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
"@parcel/watcher-win32-arm64": {
|
"@parcel/watcher-win32-arm64": {
|
||||||
"version": "2.5.0",
|
"version": "2.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.0.tgz",
|
"resolved": "https://registry.npmmirror.com/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.0.tgz",
|
||||||
"integrity": "sha512-twtft1d+JRNkM5YbmexfcH/N4znDtjgysFaV9zvZmmJezQsKpkfLYJ+JFV3uygugK6AtIM2oADPkB2AdhBrNig==",
|
"integrity": "sha512-twtft1d+JRNkM5YbmexfcH/N4znDtjgysFaV9zvZmmJezQsKpkfLYJ+JFV3uygugK6AtIM2oADPkB2AdhBrNig==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
"@parcel/watcher-win32-ia32": {
|
"@parcel/watcher-win32-ia32": {
|
||||||
"version": "2.5.0",
|
"version": "2.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.0.tgz",
|
"resolved": "https://registry.npmmirror.com/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.0.tgz",
|
||||||
"integrity": "sha512-+rgpsNRKwo8A53elqbbHXdOMtY/tAtTzManTWShB5Kk54N8Q9mzNWV7tV+IbGueCbcj826MfWGU3mprWtuf1TA==",
|
"integrity": "sha512-+rgpsNRKwo8A53elqbbHXdOMtY/tAtTzManTWShB5Kk54N8Q9mzNWV7tV+IbGueCbcj826MfWGU3mprWtuf1TA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
@@ -1391,7 +1391,7 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"ansi-styles": {
|
"ansi-styles": {
|
||||||
"version": "3.2.1",
|
"version": "3.2.1",
|
||||||
"resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-3.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
|
||||||
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
|
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -1400,7 +1400,7 @@
|
|||||||
},
|
},
|
||||||
"chalk": {
|
"chalk": {
|
||||||
"version": "2.4.2",
|
"version": "2.4.2",
|
||||||
"resolved": "https://registry.npmmirror.com/chalk/-/chalk-2.4.2.tgz",
|
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
|
||||||
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
|
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -1417,7 +1417,7 @@
|
|||||||
},
|
},
|
||||||
"postcss": {
|
"postcss": {
|
||||||
"version": "6.0.23",
|
"version": "6.0.23",
|
||||||
"resolved": "https://registry.npmmirror.com/postcss/-/postcss-6.0.23.tgz",
|
"resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz",
|
||||||
"integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
|
"integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -1428,7 +1428,7 @@
|
|||||||
},
|
},
|
||||||
"supports-color": {
|
"supports-color": {
|
||||||
"version": "5.5.0",
|
"version": "5.5.0",
|
||||||
"resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-5.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
|
||||||
"integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
|
"integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -2426,7 +2426,7 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"regenerator-runtime": {
|
"regenerator-runtime": {
|
||||||
"version": "0.11.1",
|
"version": "0.11.1",
|
||||||
"resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz",
|
"resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz",
|
||||||
"integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg=="
|
"integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg=="
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -3250,7 +3250,7 @@
|
|||||||
},
|
},
|
||||||
"normalize-path": {
|
"normalize-path": {
|
||||||
"version": "3.0.0",
|
"version": "3.0.0",
|
||||||
"resolved": "https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
|
||||||
"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
|
"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
|
||||||
"dev": true
|
"dev": true
|
||||||
}
|
}
|
||||||
@@ -3401,7 +3401,7 @@
|
|||||||
},
|
},
|
||||||
"clone-deep": {
|
"clone-deep": {
|
||||||
"version": "4.0.1",
|
"version": "4.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz",
|
"resolved": "https://registry.npmmirror.com/clone-deep/-/clone-deep-4.0.1.tgz",
|
||||||
"integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==",
|
"integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -3412,7 +3412,7 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"kind-of": {
|
"kind-of": {
|
||||||
"version": "6.0.3",
|
"version": "6.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
|
"resolved": "https://registry.npmmirror.com/kind-of/-/kind-of-6.0.3.tgz",
|
||||||
"integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
|
"integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
}
|
}
|
||||||
@@ -3805,7 +3805,7 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"big.js": {
|
"big.js": {
|
||||||
"version": "3.2.0",
|
"version": "3.2.0",
|
||||||
"resolved": "https://registry.npmmirror.com/big.js/-/big.js-3.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz",
|
||||||
"integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==",
|
"integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
@@ -4237,6 +4237,11 @@
|
|||||||
"resolved": "https://registry.npmmirror.com/dateformat/-/dateformat-2.2.0.tgz",
|
"resolved": "https://registry.npmmirror.com/dateformat/-/dateformat-2.2.0.tgz",
|
||||||
"integrity": "sha512-GODcnWq3YGoTnygPfi02ygEiRxqUxpJwuRHjdhJYuxpcZmDq4rjBiXYmbCCzStxo176ixfLT6i4NPwQooRySnw=="
|
"integrity": "sha512-GODcnWq3YGoTnygPfi02ygEiRxqUxpJwuRHjdhJYuxpcZmDq4rjBiXYmbCCzStxo176ixfLT6i4NPwQooRySnw=="
|
||||||
},
|
},
|
||||||
|
"dayjs": {
|
||||||
|
"version": "1.11.13",
|
||||||
|
"resolved": "https://registry.npmmirror.com/dayjs/-/dayjs-1.11.13.tgz",
|
||||||
|
"integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg=="
|
||||||
|
},
|
||||||
"de-indent": {
|
"de-indent": {
|
||||||
"version": "1.0.2",
|
"version": "1.0.2",
|
||||||
"resolved": "https://registry.npmmirror.com/de-indent/-/de-indent-1.0.2.tgz",
|
"resolved": "https://registry.npmmirror.com/de-indent/-/de-indent-1.0.2.tgz",
|
||||||
@@ -4477,7 +4482,7 @@
|
|||||||
},
|
},
|
||||||
"detect-libc": {
|
"detect-libc": {
|
||||||
"version": "1.0.3",
|
"version": "1.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz",
|
"resolved": "https://registry.npmmirror.com/detect-libc/-/detect-libc-1.0.3.tgz",
|
||||||
"integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==",
|
"integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
@@ -5544,7 +5549,7 @@
|
|||||||
},
|
},
|
||||||
"eventemitter3": {
|
"eventemitter3": {
|
||||||
"version": "5.0.1",
|
"version": "5.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz",
|
"resolved": "https://registry.npmmirror.com/eventemitter3/-/eventemitter3-5.0.1.tgz",
|
||||||
"integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA=="
|
"integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA=="
|
||||||
},
|
},
|
||||||
"events": {
|
"events": {
|
||||||
@@ -5659,7 +5664,7 @@
|
|||||||
},
|
},
|
||||||
"express": {
|
"express": {
|
||||||
"version": "4.21.1",
|
"version": "4.21.1",
|
||||||
"resolved": "https://registry.npmjs.org/express/-/express-4.21.1.tgz",
|
"resolved": "https://registry.npmmirror.com/express/-/express-4.21.1.tgz",
|
||||||
"integrity": "sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ==",
|
"integrity": "sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -5780,7 +5785,7 @@
|
|||||||
},
|
},
|
||||||
"fast-diff": {
|
"fast-diff": {
|
||||||
"version": "1.3.0",
|
"version": "1.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz",
|
"resolved": "https://registry.npmmirror.com/fast-diff/-/fast-diff-1.3.0.tgz",
|
||||||
"integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw=="
|
"integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw=="
|
||||||
},
|
},
|
||||||
"fast-json-stable-stringify": {
|
"fast-json-stable-stringify": {
|
||||||
@@ -7114,7 +7119,7 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"big.js": {
|
"big.js": {
|
||||||
"version": "3.2.0",
|
"version": "3.2.0",
|
||||||
"resolved": "https://registry.npmmirror.com/big.js/-/big.js-3.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz",
|
||||||
"integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==",
|
"integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
@@ -7600,7 +7605,7 @@
|
|||||||
},
|
},
|
||||||
"immutable": {
|
"immutable": {
|
||||||
"version": "5.0.3",
|
"version": "5.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/immutable/-/immutable-5.0.3.tgz",
|
"resolved": "https://registry.npmmirror.com/immutable/-/immutable-5.0.3.tgz",
|
||||||
"integrity": "sha512-P8IdPQHq3lA1xVeBRi5VPqUm5HDgKnx0Ru51wZz5mjxHr5n3RWhjIpOFU7ybkUxfB+5IToy+OLaHYDBIWsv+uw==",
|
"integrity": "sha512-P8IdPQHq3lA1xVeBRi5VPqUm5HDgKnx0Ru51wZz5mjxHr5n3RWhjIpOFU7ybkUxfB+5IToy+OLaHYDBIWsv+uw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
@@ -9187,8 +9192,7 @@
|
|||||||
},
|
},
|
||||||
"js-md5": {
|
"js-md5": {
|
||||||
"version": "0.8.3",
|
"version": "0.8.3",
|
||||||
"resolved": "https://registry.npmmirror.com/js-md5/-/js-md5-0.8.3.tgz",
|
"resolved": "https://registry.npmmirror.com/js-md5/-/js-md5-0.8.3.tgz"
|
||||||
"integrity": "sha512-qR0HB5uP6wCuRMrWPTrkMaev7MJZwJuuw4fnwAzRgP4J4/F8RwtodOKpGp4XpqsLBFzzgqIO42efFAyz2Et6KQ=="
|
|
||||||
},
|
},
|
||||||
"js-tokens": {
|
"js-tokens": {
|
||||||
"version": "3.0.2",
|
"version": "3.0.2",
|
||||||
@@ -9198,7 +9202,7 @@
|
|||||||
},
|
},
|
||||||
"js-yaml": {
|
"js-yaml": {
|
||||||
"version": "3.7.0",
|
"version": "3.7.0",
|
||||||
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.7.0.tgz",
|
"resolved": "https://registry.npmmirror.com/js-yaml/-/js-yaml-3.7.0.tgz",
|
||||||
"integrity": "sha512-eIlkGty7HGmntbV6P/ZlAsoncFLGsNoM27lkTzS+oneY/EiNhj+geqD9ezg/ip+SW6Var0BJU2JtV0vEUZpWVQ==",
|
"integrity": "sha512-eIlkGty7HGmntbV6P/ZlAsoncFLGsNoM27lkTzS+oneY/EiNhj+geqD9ezg/ip+SW6Var0BJU2JtV0vEUZpWVQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -9999,7 +10003,7 @@
|
|||||||
},
|
},
|
||||||
"lodash.clonedeep": {
|
"lodash.clonedeep": {
|
||||||
"version": "4.5.0",
|
"version": "4.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz",
|
"resolved": "https://registry.npmmirror.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz",
|
||||||
"integrity": "sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ=="
|
"integrity": "sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ=="
|
||||||
},
|
},
|
||||||
"lodash.cond": {
|
"lodash.cond": {
|
||||||
@@ -10039,7 +10043,7 @@
|
|||||||
},
|
},
|
||||||
"lodash.isequal": {
|
"lodash.isequal": {
|
||||||
"version": "4.5.0",
|
"version": "4.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz",
|
"resolved": "https://registry.npmmirror.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz",
|
||||||
"integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ=="
|
"integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ=="
|
||||||
},
|
},
|
||||||
"lodash.keys": {
|
"lodash.keys": {
|
||||||
@@ -10812,7 +10816,7 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"is-extendable": {
|
"is-extendable": {
|
||||||
"version": "1.0.1",
|
"version": "1.0.1",
|
||||||
"resolved": "https://registry.npmmirror.com/is-extendable/-/is-extendable-1.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
|
||||||
"integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
|
"integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"is-plain-object": "^2.0.4"
|
"is-plain-object": "^2.0.4"
|
||||||
@@ -11190,7 +11194,7 @@
|
|||||||
},
|
},
|
||||||
"node-addon-api": {
|
"node-addon-api": {
|
||||||
"version": "7.1.1",
|
"version": "7.1.1",
|
||||||
"resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz",
|
"resolved": "https://registry.npmmirror.com/node-addon-api/-/node-addon-api-7.1.1.tgz",
|
||||||
"integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==",
|
"integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
@@ -15580,7 +15584,7 @@
|
|||||||
},
|
},
|
||||||
"parchment": {
|
"parchment": {
|
||||||
"version": "3.0.0",
|
"version": "3.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/parchment/-/parchment-3.0.0.tgz",
|
"resolved": "https://registry.npmmirror.com/parchment/-/parchment-3.0.0.tgz",
|
||||||
"integrity": "sha512-HUrJFQ/StvgmXRcQ1ftY6VEZUq3jA2t9ncFN4F84J/vN0/FPpQF+8FKXb3l6fLces6q0uOHj6NJn+2xvZnxO6A=="
|
"integrity": "sha512-HUrJFQ/StvgmXRcQ1ftY6VEZUq3jA2t9ncFN4F84J/vN0/FPpQF+8FKXb3l6fLces6q0uOHj6NJn+2xvZnxO6A=="
|
||||||
},
|
},
|
||||||
"parse-asn1": {
|
"parse-asn1": {
|
||||||
@@ -15744,7 +15748,7 @@
|
|||||||
},
|
},
|
||||||
"path-to-regexp": {
|
"path-to-regexp": {
|
||||||
"version": "0.1.10",
|
"version": "0.1.10",
|
||||||
"resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz",
|
"resolved": "https://registry.npmmirror.com/path-to-regexp/-/path-to-regexp-0.1.10.tgz",
|
||||||
"integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==",
|
"integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
@@ -16069,7 +16073,7 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"ansi-styles": {
|
"ansi-styles": {
|
||||||
"version": "3.2.1",
|
"version": "3.2.1",
|
||||||
"resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-3.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
|
||||||
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
|
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -16078,7 +16082,7 @@
|
|||||||
},
|
},
|
||||||
"chalk": {
|
"chalk": {
|
||||||
"version": "2.4.2",
|
"version": "2.4.2",
|
||||||
"resolved": "https://registry.npmmirror.com/chalk/-/chalk-2.4.2.tgz",
|
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
|
||||||
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
|
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -16095,7 +16099,7 @@
|
|||||||
},
|
},
|
||||||
"postcss": {
|
"postcss": {
|
||||||
"version": "6.0.23",
|
"version": "6.0.23",
|
||||||
"resolved": "https://registry.npmmirror.com/postcss/-/postcss-6.0.23.tgz",
|
"resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz",
|
||||||
"integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
|
"integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -16106,7 +16110,7 @@
|
|||||||
},
|
},
|
||||||
"supports-color": {
|
"supports-color": {
|
||||||
"version": "5.5.0",
|
"version": "5.5.0",
|
||||||
"resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-5.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
|
||||||
"integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
|
"integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -16372,7 +16376,7 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"ansi-styles": {
|
"ansi-styles": {
|
||||||
"version": "3.2.1",
|
"version": "3.2.1",
|
||||||
"resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-3.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
|
||||||
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
|
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -16381,7 +16385,7 @@
|
|||||||
},
|
},
|
||||||
"chalk": {
|
"chalk": {
|
||||||
"version": "2.4.2",
|
"version": "2.4.2",
|
||||||
"resolved": "https://registry.npmmirror.com/chalk/-/chalk-2.4.2.tgz",
|
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
|
||||||
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
|
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -16398,7 +16402,7 @@
|
|||||||
},
|
},
|
||||||
"postcss": {
|
"postcss": {
|
||||||
"version": "6.0.23",
|
"version": "6.0.23",
|
||||||
"resolved": "https://registry.npmmirror.com/postcss/-/postcss-6.0.23.tgz",
|
"resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz",
|
||||||
"integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
|
"integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -16409,7 +16413,7 @@
|
|||||||
},
|
},
|
||||||
"supports-color": {
|
"supports-color": {
|
||||||
"version": "5.5.0",
|
"version": "5.5.0",
|
||||||
"resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-5.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
|
||||||
"integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
|
"integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -16430,7 +16434,7 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"ansi-styles": {
|
"ansi-styles": {
|
||||||
"version": "3.2.1",
|
"version": "3.2.1",
|
||||||
"resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-3.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
|
||||||
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
|
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -16439,7 +16443,7 @@
|
|||||||
},
|
},
|
||||||
"chalk": {
|
"chalk": {
|
||||||
"version": "2.4.2",
|
"version": "2.4.2",
|
||||||
"resolved": "https://registry.npmmirror.com/chalk/-/chalk-2.4.2.tgz",
|
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
|
||||||
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
|
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -16456,7 +16460,7 @@
|
|||||||
},
|
},
|
||||||
"postcss": {
|
"postcss": {
|
||||||
"version": "6.0.23",
|
"version": "6.0.23",
|
||||||
"resolved": "https://registry.npmmirror.com/postcss/-/postcss-6.0.23.tgz",
|
"resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz",
|
||||||
"integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
|
"integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -16467,7 +16471,7 @@
|
|||||||
},
|
},
|
||||||
"supports-color": {
|
"supports-color": {
|
||||||
"version": "5.5.0",
|
"version": "5.5.0",
|
||||||
"resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-5.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
|
||||||
"integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
|
"integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -16488,7 +16492,7 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"ansi-styles": {
|
"ansi-styles": {
|
||||||
"version": "3.2.1",
|
"version": "3.2.1",
|
||||||
"resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-3.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
|
||||||
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
|
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -16497,7 +16501,7 @@
|
|||||||
},
|
},
|
||||||
"chalk": {
|
"chalk": {
|
||||||
"version": "2.4.2",
|
"version": "2.4.2",
|
||||||
"resolved": "https://registry.npmmirror.com/chalk/-/chalk-2.4.2.tgz",
|
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
|
||||||
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
|
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -16514,7 +16518,7 @@
|
|||||||
},
|
},
|
||||||
"postcss": {
|
"postcss": {
|
||||||
"version": "6.0.23",
|
"version": "6.0.23",
|
||||||
"resolved": "https://registry.npmmirror.com/postcss/-/postcss-6.0.23.tgz",
|
"resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz",
|
||||||
"integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
|
"integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -16525,7 +16529,7 @@
|
|||||||
},
|
},
|
||||||
"supports-color": {
|
"supports-color": {
|
||||||
"version": "5.5.0",
|
"version": "5.5.0",
|
||||||
"resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-5.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
|
||||||
"integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
|
"integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -16937,8 +16941,7 @@
|
|||||||
},
|
},
|
||||||
"qs": {
|
"qs": {
|
||||||
"version": "6.13.1",
|
"version": "6.13.1",
|
||||||
"resolved": "https://registry.npmjs.org/qs/-/qs-6.13.1.tgz",
|
"resolved": "https://registry.npmmirror.com/qs/-/qs-6.13.1.tgz",
|
||||||
"integrity": "sha512-EJPeIn0CYrGu+hli1xilKAPXODtJ12T0sP63Ijx2/khC2JtuaN3JyNIpvmnkmaEtha9ocbG4A4cMcr+TvqvwQg==",
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"side-channel": "^1.0.6"
|
"side-channel": "^1.0.6"
|
||||||
}
|
}
|
||||||
@@ -16966,7 +16969,7 @@
|
|||||||
},
|
},
|
||||||
"quill": {
|
"quill": {
|
||||||
"version": "2.0.3",
|
"version": "2.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/quill/-/quill-2.0.3.tgz",
|
"resolved": "https://registry.npmmirror.com/quill/-/quill-2.0.3.tgz",
|
||||||
"integrity": "sha512-xEYQBqfYx/sfb33VJiKnSJp8ehloavImQ2A6564GAbqG55PGw1dAWUn1MUbQB62t0azawUS2CZZhWCjO8gRvTw==",
|
"integrity": "sha512-xEYQBqfYx/sfb33VJiKnSJp8ehloavImQ2A6564GAbqG55PGw1dAWUn1MUbQB62t0azawUS2CZZhWCjO8gRvTw==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"eventemitter3": "^5.0.1",
|
"eventemitter3": "^5.0.1",
|
||||||
@@ -16977,7 +16980,7 @@
|
|||||||
},
|
},
|
||||||
"quill-delta": {
|
"quill-delta": {
|
||||||
"version": "5.1.0",
|
"version": "5.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/quill-delta/-/quill-delta-5.1.0.tgz",
|
"resolved": "https://registry.npmmirror.com/quill-delta/-/quill-delta-5.1.0.tgz",
|
||||||
"integrity": "sha512-X74oCeRI4/p0ucjb5Ma8adTXd9Scumz367kkMK5V/IatcX6A0vlgLgKbzXWy5nZmCGeNJm2oQX0d2Eqj+ZIlCA==",
|
"integrity": "sha512-X74oCeRI4/p0ucjb5Ma8adTXd9Scumz367kkMK5V/IatcX6A0vlgLgKbzXWy5nZmCGeNJm2oQX0d2Eqj+ZIlCA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"fast-diff": "^1.3.0",
|
"fast-diff": "^1.3.0",
|
||||||
@@ -17721,7 +17724,7 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"qs": {
|
"qs": {
|
||||||
"version": "6.5.3",
|
"version": "6.5.3",
|
||||||
"resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz",
|
"resolved": "https://registry.npmmirror.com/qs/-/qs-6.5.3.tgz",
|
||||||
"integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==",
|
"integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==",
|
||||||
"dev": true
|
"dev": true
|
||||||
}
|
}
|
||||||
@@ -18233,7 +18236,7 @@
|
|||||||
},
|
},
|
||||||
"sass": {
|
"sass": {
|
||||||
"version": "1.83.0",
|
"version": "1.83.0",
|
||||||
"resolved": "https://registry.npmjs.org/sass/-/sass-1.83.0.tgz",
|
"resolved": "https://registry.npmmirror.com/sass/-/sass-1.83.0.tgz",
|
||||||
"integrity": "sha512-qsSxlayzoOjdvXMVLkzF84DJFc2HZEL/rFyGIKbbilYtAvlCxyuzUeff9LawTn4btVnLKg75Z8MMr1lxU1lfGw==",
|
"integrity": "sha512-qsSxlayzoOjdvXMVLkzF84DJFc2HZEL/rFyGIKbbilYtAvlCxyuzUeff9LawTn4btVnLKg75Z8MMr1lxU1lfGw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -18245,7 +18248,7 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"chokidar": {
|
"chokidar": {
|
||||||
"version": "4.0.2",
|
"version": "4.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.2.tgz",
|
"resolved": "https://registry.npmmirror.com/chokidar/-/chokidar-4.0.2.tgz",
|
||||||
"integrity": "sha512-/b57FK+bblSU+dfewfFe0rT1YjVDfOmeLQwCAuC+vwvgLkXboATqqmy+Ipux6JrF6L5joe5CBnFOw+gLWH6yKg==",
|
"integrity": "sha512-/b57FK+bblSU+dfewfFe0rT1YjVDfOmeLQwCAuC+vwvgLkXboATqqmy+Ipux6JrF6L5joe5CBnFOw+gLWH6yKg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -18254,7 +18257,7 @@
|
|||||||
},
|
},
|
||||||
"readdirp": {
|
"readdirp": {
|
||||||
"version": "4.0.2",
|
"version": "4.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz",
|
"resolved": "https://registry.npmmirror.com/readdirp/-/readdirp-4.0.2.tgz",
|
||||||
"integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==",
|
"integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==",
|
||||||
"dev": true
|
"dev": true
|
||||||
}
|
}
|
||||||
@@ -18262,7 +18265,7 @@
|
|||||||
},
|
},
|
||||||
"sass-loader": {
|
"sass-loader": {
|
||||||
"version": "7.3.1",
|
"version": "7.3.1",
|
||||||
"resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-7.3.1.tgz",
|
"resolved": "https://registry.npmmirror.com/sass-loader/-/sass-loader-7.3.1.tgz",
|
||||||
"integrity": "sha512-tuU7+zm0pTCynKYHpdqaPpe+MMTQ76I9TPZ7i4/5dZsigE350shQWe5EZNl5dBidM49TPET75tNqRbcsUZWeNA==",
|
"integrity": "sha512-tuU7+zm0pTCynKYHpdqaPpe+MMTQ76I9TPZ7i4/5dZsigE350shQWe5EZNl5dBidM49TPET75tNqRbcsUZWeNA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -18275,13 +18278,13 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"pify": {
|
"pify": {
|
||||||
"version": "4.0.1",
|
"version": "4.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
|
"resolved": "https://registry.npmmirror.com/pify/-/pify-4.0.1.tgz",
|
||||||
"integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==",
|
"integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"semver": {
|
"semver": {
|
||||||
"version": "6.3.1",
|
"version": "6.3.1",
|
||||||
"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
|
"resolved": "https://registry.npmmirror.com/semver/-/semver-6.3.1.tgz",
|
||||||
"integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
|
"integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
|
||||||
"dev": true
|
"dev": true
|
||||||
}
|
}
|
||||||
@@ -18529,7 +18532,7 @@
|
|||||||
},
|
},
|
||||||
"shallow-clone": {
|
"shallow-clone": {
|
||||||
"version": "3.0.1",
|
"version": "3.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz",
|
"resolved": "https://registry.npmmirror.com/shallow-clone/-/shallow-clone-3.0.1.tgz",
|
||||||
"integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==",
|
"integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -18538,7 +18541,7 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"kind-of": {
|
"kind-of": {
|
||||||
"version": "6.0.3",
|
"version": "6.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
|
"resolved": "https://registry.npmmirror.com/kind-of/-/kind-of-6.0.3.tgz",
|
||||||
"integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
|
"integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
}
|
}
|
||||||
@@ -18783,7 +18786,7 @@
|
|||||||
},
|
},
|
||||||
"source-map-js": {
|
"source-map-js": {
|
||||||
"version": "1.2.1",
|
"version": "1.2.1",
|
||||||
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
|
"resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.2.1.tgz",
|
||||||
"integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==",
|
"integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
@@ -19322,12 +19325,12 @@
|
|||||||
},
|
},
|
||||||
"kind-of": {
|
"kind-of": {
|
||||||
"version": "5.1.0",
|
"version": "5.1.0",
|
||||||
"resolved": "https://registry.npmmirror.com/kind-of/-/kind-of-5.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
|
||||||
"integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw=="
|
"integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw=="
|
||||||
},
|
},
|
||||||
"micromatch": {
|
"micromatch": {
|
||||||
"version": "3.1.0",
|
"version": "3.1.0",
|
||||||
"resolved": "https://registry.npmmirror.com/micromatch/-/micromatch-3.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.0.tgz",
|
||||||
"integrity": "sha512-3StSelAE+hnRvMs8IdVW7Uhk8CVed5tp+kLLGlBP6WiRAXS21GPGu/Nat4WNPXj2Eoc24B02SaeoyozPMfj0/g==",
|
"integrity": "sha512-3StSelAE+hnRvMs8IdVW7Uhk8CVed5tp+kLLGlBP6WiRAXS21GPGu/Nat4WNPXj2Eoc24B02SaeoyozPMfj0/g==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"arr-diff": "^4.0.0",
|
"arr-diff": "^4.0.0",
|
||||||
@@ -19454,7 +19457,7 @@
|
|||||||
},
|
},
|
||||||
"string-width": {
|
"string-width": {
|
||||||
"version": "2.1.1",
|
"version": "2.1.1",
|
||||||
"resolved": "https://registry.npmmirror.com/string-width/-/string-width-2.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
|
||||||
"integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
|
"integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -20832,22 +20835,22 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"eventemitter3": {
|
"eventemitter3": {
|
||||||
"version": "2.0.3",
|
"version": "2.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-2.0.3.tgz",
|
"resolved": "https://registry.npmmirror.com/eventemitter3/-/eventemitter3-2.0.3.tgz",
|
||||||
"integrity": "sha512-jLN68Dx5kyFHaePoXWPsCGW5qdyZQtLYHkxkg02/Mz6g0kYpDx4FyP6XfArhQdlOC4b8Mv+EMxPo/8La7Tzghg=="
|
"integrity": "sha512-jLN68Dx5kyFHaePoXWPsCGW5qdyZQtLYHkxkg02/Mz6g0kYpDx4FyP6XfArhQdlOC4b8Mv+EMxPo/8La7Tzghg=="
|
||||||
},
|
},
|
||||||
"fast-diff": {
|
"fast-diff": {
|
||||||
"version": "1.1.2",
|
"version": "1.1.2",
|
||||||
"resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.1.2.tgz",
|
"resolved": "https://registry.npmmirror.com/fast-diff/-/fast-diff-1.1.2.tgz",
|
||||||
"integrity": "sha512-KaJUt+M9t1qaIteSvjc6P3RbMdXsNhK61GRftR6SNxqmhthcd9MGIi4T+o0jD8LUSpSnSKXE20nLtJ3fOHxQig=="
|
"integrity": "sha512-KaJUt+M9t1qaIteSvjc6P3RbMdXsNhK61GRftR6SNxqmhthcd9MGIi4T+o0jD8LUSpSnSKXE20nLtJ3fOHxQig=="
|
||||||
},
|
},
|
||||||
"parchment": {
|
"parchment": {
|
||||||
"version": "1.1.4",
|
"version": "1.1.4",
|
||||||
"resolved": "https://registry.npmjs.org/parchment/-/parchment-1.1.4.tgz",
|
"resolved": "https://registry.npmmirror.com/parchment/-/parchment-1.1.4.tgz",
|
||||||
"integrity": "sha512-J5FBQt/pM2inLzg4hEWmzQx/8h8D0CiDxaG3vyp9rKrQRSDgBlhjdP5jQGgosEajXPSQouXGHOmVdgo7QmJuOg=="
|
"integrity": "sha512-J5FBQt/pM2inLzg4hEWmzQx/8h8D0CiDxaG3vyp9rKrQRSDgBlhjdP5jQGgosEajXPSQouXGHOmVdgo7QmJuOg=="
|
||||||
},
|
},
|
||||||
"quill": {
|
"quill": {
|
||||||
"version": "1.3.7",
|
"version": "1.3.7",
|
||||||
"resolved": "https://registry.npmjs.org/quill/-/quill-1.3.7.tgz",
|
"resolved": "https://registry.npmmirror.com/quill/-/quill-1.3.7.tgz",
|
||||||
"integrity": "sha512-hG/DVzh/TiknWtE6QmWAF/pxoZKYxfe3J/d/+ShUWkDvvkZQVTPeVmUJVu1uE6DDooC4fWTiCLh84ul89oNz5g==",
|
"integrity": "sha512-hG/DVzh/TiknWtE6QmWAF/pxoZKYxfe3J/d/+ShUWkDvvkZQVTPeVmUJVu1uE6DDooC4fWTiCLh84ul89oNz5g==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"clone": "^2.1.1",
|
"clone": "^2.1.1",
|
||||||
@@ -20860,7 +20863,7 @@
|
|||||||
},
|
},
|
||||||
"quill-delta": {
|
"quill-delta": {
|
||||||
"version": "3.6.3",
|
"version": "3.6.3",
|
||||||
"resolved": "https://registry.npmjs.org/quill-delta/-/quill-delta-3.6.3.tgz",
|
"resolved": "https://registry.npmmirror.com/quill-delta/-/quill-delta-3.6.3.tgz",
|
||||||
"integrity": "sha512-wdIGBlcX13tCHOXGMVnnTVFtGRLoP0imqxM696fIPwIf5ODIYUHIvHbZcyvGlZFiFhK5XzDC2lpjbxRhnM05Tg==",
|
"integrity": "sha512-wdIGBlcX13tCHOXGMVnnTVFtGRLoP0imqxM696fIPwIf5ODIYUHIvHbZcyvGlZFiFhK5XzDC2lpjbxRhnM05Tg==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"deep-equal": "^1.0.1",
|
"deep-equal": "^1.0.1",
|
||||||
@@ -21604,7 +21607,7 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"source-list-map": {
|
"source-list-map": {
|
||||||
"version": "2.0.1",
|
"version": "2.0.1",
|
||||||
"resolved": "https://registry.npmmirror.com/source-list-map/-/source-list-map-2.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz",
|
||||||
"integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==",
|
"integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,6 +17,7 @@
|
|||||||
"axios": "0.17.1",
|
"axios": "0.17.1",
|
||||||
"babel-plugin-component": "0.10.1",
|
"babel-plugin-component": "0.10.1",
|
||||||
"babel-polyfill": "6.26.0",
|
"babel-polyfill": "6.26.0",
|
||||||
|
"dayjs": "^1.11.13",
|
||||||
"echarts": "^5.5.1",
|
"echarts": "^5.5.1",
|
||||||
"element-china-area-data": "^5.0.2",
|
"element-china-area-data": "^5.0.2",
|
||||||
"element-ui": "2.8.2",
|
"element-ui": "2.8.2",
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ function del(data) {
|
|||||||
}
|
}
|
||||||
function getList(data) {
|
function getList(data) {
|
||||||
return $http({
|
return $http({
|
||||||
url: 'app/discSpinning/selectDiscSpinning',
|
url: 'discSpinning/selectDiscSpinning',
|
||||||
method: 'get',
|
method: 'get',
|
||||||
params: data
|
params: data
|
||||||
})
|
})
|
||||||
|
|||||||
14
src/api/viplist.js
Normal file
14
src/api/viplist.js
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
import $http from "@/utils/httpRequest";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据交易订单号获取汇总信息
|
||||||
|
* @param {*} params
|
||||||
|
* @returns
|
||||||
|
*/
|
||||||
|
export function queryByTradeNo(params) {
|
||||||
|
return $http({
|
||||||
|
url: "/order/queryByTradeNo",
|
||||||
|
method: "get",
|
||||||
|
params
|
||||||
|
});
|
||||||
|
}
|
||||||
@@ -38,3 +38,41 @@ export function summary_query(params) {
|
|||||||
params
|
params
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 实名信息列表
|
||||||
|
* @param {*} params
|
||||||
|
* @returns
|
||||||
|
*/
|
||||||
|
export function userInfo_list(params) {
|
||||||
|
return $http({
|
||||||
|
url: "/userInfo/list",
|
||||||
|
method: "get",
|
||||||
|
params
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 实名信息修改
|
||||||
|
* @param {*} data
|
||||||
|
* @returns
|
||||||
|
*/
|
||||||
|
export function userInfo(data) {
|
||||||
|
return $http({
|
||||||
|
url: "/userInfo",
|
||||||
|
method: "put",
|
||||||
|
data
|
||||||
|
});
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* 实名删除
|
||||||
|
* @param {*} data
|
||||||
|
* @returns
|
||||||
|
*/
|
||||||
|
export function userInfoDel(data) {
|
||||||
|
return $http({
|
||||||
|
url: "/userInfo",
|
||||||
|
method: "DELETE",
|
||||||
|
data
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|||||||
@@ -4,8 +4,11 @@ export const productUrl='dj-admin';
|
|||||||
// const baseUrl = "http://192.168.1.7:8100/czg/"
|
// const baseUrl = "http://192.168.1.7:8100/czg/"
|
||||||
// const baseUrl = "https://api.tianjinzhitongdaohe.com/czg/"
|
// const baseUrl = "https://api.tianjinzhitongdaohe.com/czg/"
|
||||||
|
|
||||||
const baseUrl = "https://web-api.hnsiyao.cn/czg/" //测试
|
// const baseUrl = "https://web-api.hnsiyao.cn/czg/" //测试
|
||||||
// const baseUrl = "https://web.hnsiyao.cn/czg/" // 线上
|
// const baseUrl = "https://web.hnsiyao.cn/czg/" // 线上
|
||||||
|
// const baseUrl = "http://192.168.1.31:8080/admin/" // php本地
|
||||||
|
// const baseUrl = "https://playlet.test.sxczgkj.com/admin/" // php测试服
|
||||||
|
const baseUrl = "http://192.168.1.10:8787/czg/" // php测试服
|
||||||
|
|
||||||
export default{
|
export default{
|
||||||
baseUrl
|
baseUrl
|
||||||
|
|||||||
@@ -37,6 +37,8 @@ const mainRoutes = {
|
|||||||
{path: '/userList', component: _import('user/userList'), name: 'userList', meta: {title: '用户列表', isTab: true}},
|
{path: '/userList', component: _import('user/userList'), name: 'userList', meta: {title: '用户列表', isTab: true}},
|
||||||
{path: '/allocationList',component: _import('allocation/allocationList'),name: 'allocationList',meta: {title: '配置列表', isTab: true}},
|
{path: '/allocationList',component: _import('allocation/allocationList'),name: 'allocationList',meta: {title: '配置列表', isTab: true}},
|
||||||
{path: '/financeList', component: _import('finance/financeList'), name: 'financeList', meta: {title: '财务中心', isTab: true}},
|
{path: '/financeList', component: _import('finance/financeList'), name: 'financeList', meta: {title: '财务中心', isTab: true}},
|
||||||
|
{path: '/shareFriends', component: _import('finance/shareFriends'), name: 'shareFriends', meta: {title: '邀请好友奖励', isTab: true}},
|
||||||
|
{path: '/lotteryInquiry', component: _import('finance/lotteryInquiry'), name: 'lotteryInquiry', meta: {title: '抽奖查询', isTab: true}},
|
||||||
{path: '/message', component: _import('message/message'), name: 'message', meta: {title: '消息中心', isTab: true}},
|
{path: '/message', component: _import('message/message'), name: 'message', meta: {title: '消息中心', isTab: true}},
|
||||||
{path: '/renwu', component: _import('renwu/index'), name: 'renwu', meta: {title: '任务中心', isTab: false}},
|
{path: '/renwu', component: _import('renwu/index'), name: 'renwu', meta: {title: '任务中心', isTab: false}},
|
||||||
{path: '/taskConfig', component: _import('taskConfig/taskConfig'), name: 'taskConfig', meta: {title: '任务配置', isTab: true}},
|
{path: '/taskConfig', component: _import('taskConfig/taskConfig'), name: 'taskConfig', meta: {title: '任务配置', isTab: true}},
|
||||||
|
|||||||
@@ -9,11 +9,11 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="value" label="内容" width="500">
|
<el-table-column prop="value" label="内容" width="500">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="是否返回给App">
|
<el-table-column label="是否返回给App" prop="isAppUse" width="120">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-switch v-model="scope.row.isAppUse"
|
<!-- <el-switch v-model="scope.row.isAppUse" @change="updateAmendNotice($event, scope.row)"
|
||||||
@change="updateAmendNotice($event,scope.row)"
|
:active-value="1" :inactive-value="0"></el-switch> -->
|
||||||
:active-value="1" :inactive-value="0"></el-switch>
|
{{ scope.row.isAppUse == 1 ? '是' : '否' }}
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="createAt" label="创建时间">
|
<el-table-column prop="createAt" label="创建时间">
|
||||||
@@ -35,7 +35,9 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="value" label="内容" width="500">
|
<el-table-column prop="value" label="内容" width="500">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<div style="display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 3;overflow: hidden;max-height:80px;">{{scope.row.value}}</div>
|
<div
|
||||||
|
style="display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 3;line-clamp: 3;overflow: hidden;max-height:80px;">
|
||||||
|
{{ scope.row.value }}</div>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="createAt" label="创建时间">
|
<el-table-column prop="createAt" label="创建时间">
|
||||||
@@ -114,8 +116,8 @@
|
|||||||
<el-table-column prop="value" label="内容" width="500">
|
<el-table-column prop="value" label="内容" width="500">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<div
|
<div
|
||||||
style="display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 4;overflow: hidden;">
|
style="display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 4;line-clamp: 4;overflow: hidden;">
|
||||||
{{scope.row.value}}</div>
|
{{ scope.row.value }}</div>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="createAt" label="创建时间">
|
<el-table-column prop="createAt" label="创建时间">
|
||||||
@@ -168,48 +170,52 @@
|
|||||||
</el-table>
|
</el-table>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
<el-tab-pane label="文件上传配置" name="wenjian">
|
<el-tab-pane label="文件上传配置" name="wenjian">
|
||||||
<el-table v-loading="tableDataLoading" :data="tableData">
|
<el-table v-loading="tableDataLoading" :data="tableData">
|
||||||
<el-table-column fixed prop="type" label="编号" align="center" width="80">
|
<el-table-column fixed prop="type" label="编号" align="center" width="80">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="min" label="类型">
|
<el-table-column prop="min" label="类型">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="value" label="内容" width="500">
|
<el-table-column prop="value" label="内容" width="500">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<div style="display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 3;overflow: hidden;max-height:80px;">{{scope.row.value}}</div>
|
<div
|
||||||
</template>
|
style="display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 3;line-clamp: 3;overflow: hidden;max-height:80px;">
|
||||||
</el-table-column>
|
{{ scope.row.value }}</div>
|
||||||
<el-table-column prop="createAt" label="创建时间">
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="操作" prop="id" width="120">
|
<el-table-column prop="createAt" label="创建时间">
|
||||||
<template slot-scope="scope">
|
</el-table-column>
|
||||||
<el-button size="mini" type="primary" :disabled="!isAuth('allocationList:update')"
|
<el-table-column label="操作" prop="id" width="120">
|
||||||
@click="amend(scope.$index, scope.row)">编辑
|
<template slot-scope="scope">
|
||||||
</el-button>
|
<el-button size="mini" type="primary" :disabled="!isAuth('allocationList:update')"
|
||||||
</template>
|
@click="amend(scope.$index, scope.row)">编辑
|
||||||
</el-table-column>
|
</el-button>
|
||||||
</el-table>
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
<el-tab-pane label="协议配置" name="xieyi">
|
<el-tab-pane label="协议配置" name="xieyi">
|
||||||
<el-table v-loading="tableDataLoading" :data="tableData">
|
<el-table v-loading="tableDataLoading" :data="tableData">
|
||||||
<el-table-column fixed prop="type" label="编号" align="center" width="80">
|
<el-table-column fixed prop="type" label="编号" align="center" width="80">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="min" label="类型">
|
<el-table-column prop="min" label="类型">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="value" label="内容" width="500">
|
<el-table-column prop="value" label="内容" width="500">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<div style="display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 3;overflow: hidden;max-height:80px;">{{scope.row.value}}</div>
|
<div
|
||||||
</template>
|
style="display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 3;line-clamp: 3;overflow: hidden;max-height:80px;">
|
||||||
</el-table-column>
|
{{ scope.row.value }}</div>
|
||||||
<el-table-column prop="createAt" label="创建时间">
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="操作" prop="id" width="120">
|
<el-table-column prop="createAt" label="创建时间">
|
||||||
<template slot-scope="scope">
|
</el-table-column>
|
||||||
<el-button size="mini" type="primary" :disabled="!isAuth('allocationList:update')"
|
<el-table-column label="操作" prop="id" width="120">
|
||||||
@click="amend(scope.$index, scope.row)">编辑
|
<template slot-scope="scope">
|
||||||
</el-button>
|
<el-button size="mini" type="primary" :disabled="!isAuth('allocationList:update')"
|
||||||
</template>
|
@click="amend(scope.$index, scope.row)">编辑
|
||||||
</el-table-column>
|
</el-button>
|
||||||
</el-table>
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
<el-tab-pane label="开关配置" name="kaiguan">
|
<el-tab-pane label="开关配置" name="kaiguan">
|
||||||
<el-table v-loading="tableDataLoading" :data="tableData">
|
<el-table v-loading="tableDataLoading" :data="tableData">
|
||||||
@@ -239,8 +245,8 @@
|
|||||||
<el-table-column prop="value" label="内容">
|
<el-table-column prop="value" label="内容">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<div
|
<div
|
||||||
style="display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 3;overflow: hidden;max-height:80px;">
|
style="display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 3;line-clamp: 3;overflow: hidden;max-height:80px;">
|
||||||
{{scope.row.value}}
|
{{ scope.row.value }}
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@@ -255,6 +261,32 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
|
<el-tab-pane label="分享好友页面配置" name="Share">
|
||||||
|
<el-form ref="ShareFriends" :model="ShareFriends" :rules="ShareFriendsrules" label-width="80px">
|
||||||
|
<el-form-item label="顶部图">
|
||||||
|
<div
|
||||||
|
style=" width: 148px; height: 148px; border: 1px dashed #c0ccda; border-radius: 6px;text-align: center;line-height: 148px; ">
|
||||||
|
<el-upload class="avatar-uploader" v-model="ShareFriends.imageUrl"
|
||||||
|
:action="$http.adornUrlUp('alioss/upload')" :show-file-list="false"
|
||||||
|
:on-success="handleAvatarSuccess">
|
||||||
|
<img v-if="imageUrl" :src="imageUrl" class="avatar"
|
||||||
|
style="border-radius: 6px; width: 148px; height: 148px" />
|
||||||
|
<i v-else class="el-icon-plus avatar-uploader-icon"></i>
|
||||||
|
</el-upload>
|
||||||
|
</div>
|
||||||
|
<div> *建议优先选择jpg格式,并且最好控制在500kb内</div>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="邀请文案" prop="tips">
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="8"><el-input v-model="ShareFriends.tips"></el-input></el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-form-item>
|
||||||
|
|
||||||
|
<el-form-item>
|
||||||
|
<el-button type="primary" @click="onSubmit">保存</el-button>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
</el-tab-pane>
|
||||||
</el-tabs>
|
</el-tabs>
|
||||||
<!-- 修改弹框 -->
|
<!-- 修改弹框 -->
|
||||||
<el-dialog title="修改" :visible.sync="dialogFormVisible" center>
|
<el-dialog title="修改" :visible.sync="dialogFormVisible" center>
|
||||||
@@ -263,19 +295,22 @@
|
|||||||
<el-input v-model="form.min" style="width:65%;" readonly></el-input>
|
<el-input v-model="form.min" style="width:65%;" readonly></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="内容:" :label-width="formLabelWidth">
|
<el-form-item label="内容:" :label-width="formLabelWidth">
|
||||||
<quill-editor v-if="form.conditionFrom=='xieyi'" ref="myTextEditor" v-model="form.value" :options="quillOption"
|
<quill-editor v-if="form.conditionFrom == 'xieyi'" ref="myTextEditor" v-model="form.value"
|
||||||
style="padding-bottom: 50px;height: 300px;width: 72%;display: inline-table;margin-bottom: 60px;">
|
:options="quillOption"
|
||||||
|
style="padding-bottom: 50px;height: 300px;width: 72%;display: inline-table;margin-bottom: 60px;">
|
||||||
</quill-editor>
|
</quill-editor>
|
||||||
<div v-else-if="form.conditionFrom=='image'">
|
<div v-else-if="form.conditionFrom == 'image'">
|
||||||
<!-- <el-input v-model="form.value" style="width:65%;"></el-input> -->
|
<!-- <el-input v-model="form.value" style="width:65%;"></el-input> -->
|
||||||
<el-upload class="avatar-uploader" v-model="form.value"
|
<el-upload class="avatar-uploader" v-model="form.value"
|
||||||
:action="$http.adornUrlUp('alioss/upload')" :show-file-list="false"
|
:action="$http.adornUrlUp('alioss/upload')" :show-file-list="false"
|
||||||
:on-success="handleAvatarSuccess1">
|
:on-success="handleAvatarSuccess1">
|
||||||
<img v-if="form.value" :src="form.value" class="avatar" style="width: 148px;height: 148px;" />
|
<img v-if="form.value" :src="form.value" class="avatar"
|
||||||
<i v-else class="el-icon-plus avatar-uploader-icon" style="font-size: 28px;color: #8c939d"></i>
|
style="width: 148px;height: 148px;" />
|
||||||
|
<i v-else class="el-icon-plus avatar-uploader-icon"
|
||||||
|
style="font-size: 28px;color: #8c939d"></i>
|
||||||
</el-upload>
|
</el-upload>
|
||||||
</div>
|
</div>
|
||||||
<div v-else-if="form.conditionFrom=='kaiguan'">
|
<div v-else-if="form.conditionFrom == 'kaiguan'">
|
||||||
<div>
|
<div>
|
||||||
<el-radio-group v-model="form.value">
|
<el-radio-group v-model="form.value">
|
||||||
<el-radio label="是">是</el-radio>
|
<el-radio label="是">是</el-radio>
|
||||||
@@ -283,12 +318,16 @@
|
|||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<el-input v-else v-model="form.value" :rows="4" style="width:65%;"></el-input>
|
<el-input v-else v-model="form.value" :rows="4" style="width:65%;"></el-input>
|
||||||
<!-- <el-input v-model="form.value" style="width:65%;"></el-input> -->
|
<!-- <el-input v-model="form.value" style="width:65%;"></el-input> -->
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="是否返回给App" :label-width="formLabelWidth">
|
<el-form-item label="是否返回给App" :label-width="formLabelWidth">
|
||||||
<el-switch v-model="form.isAppUse" :active-value="1" :inactive-value="0"></el-switch>
|
<!-- <el-switch v-model="form.isAppUse" :active-value="1" :inactive-value="0"></el-switch> -->
|
||||||
|
<el-radio-group v-model="form.isAppUse">
|
||||||
|
<el-radio :label="1">是</el-radio>
|
||||||
|
<el-radio :label="0">否</el-radio>
|
||||||
|
</el-radio-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<div slot="footer" class="dialog-footer">
|
<div slot="footer" class="dialog-footer">
|
||||||
@@ -300,264 +339,341 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import {
|
import {
|
||||||
|
quillEditor
|
||||||
|
} from 'vue-quill-editor'
|
||||||
|
import 'quill/dist/quill.core.css'
|
||||||
|
import 'quill/dist/quill.snow.css'
|
||||||
|
import 'quill/dist/quill.bubble.css'
|
||||||
|
import quillConfig from '../locality/quill-config.js'
|
||||||
|
export default {
|
||||||
|
components: {
|
||||||
quillEditor
|
quillEditor
|
||||||
} from 'vue-quill-editor'
|
},
|
||||||
import 'quill/dist/quill.core.css'
|
data() {
|
||||||
import 'quill/dist/quill.snow.css'
|
return {
|
||||||
import 'quill/dist/quill.bubble.css'
|
quillOption: quillConfig,
|
||||||
import quillConfig from '../locality/quill-config.js'
|
openValue: '是',
|
||||||
export default {
|
closeValue: '否',
|
||||||
components: {
|
limit: 10,
|
||||||
quillEditor
|
page: 0,
|
||||||
},
|
min: '',
|
||||||
data() {
|
value: '',
|
||||||
return {
|
id: '',
|
||||||
quillOption: quillConfig,
|
condition: 'xitong',
|
||||||
openValue: '是',
|
activeName: 'first',
|
||||||
closeValue: '否',
|
dialogFormVisible: false,
|
||||||
limit: 10,
|
dialogFormVisible1: false,
|
||||||
page: 0,
|
tableDataLoading: true,
|
||||||
|
formLabelWidth: '200px',
|
||||||
|
ShareFriends: {},
|
||||||
|
ShareFriendsrules: {
|
||||||
|
imageUrl: [{
|
||||||
|
required: true,
|
||||||
|
message: '请选择图片',
|
||||||
|
trigger: 'blur'
|
||||||
|
}],
|
||||||
|
tips: [{
|
||||||
|
required: true,
|
||||||
|
message: '请输入文案',
|
||||||
|
trigger: 'blur'
|
||||||
|
}],
|
||||||
|
},
|
||||||
|
form: {
|
||||||
|
id: '',
|
||||||
min: '',
|
min: '',
|
||||||
value: '',
|
value: '',
|
||||||
|
type: '',
|
||||||
|
isAppUse: false,
|
||||||
|
},
|
||||||
|
form2: {
|
||||||
id: '',
|
id: '',
|
||||||
condition: 'xitong',
|
min: '',
|
||||||
activeName: 'first',
|
value: '',
|
||||||
dialogFormVisible: false,
|
type: '',
|
||||||
dialogFormVisible1: false,
|
},
|
||||||
tableDataLoading: true,
|
values: [{
|
||||||
formLabelWidth: '200px',
|
value: 1,
|
||||||
form: {
|
label: '是'
|
||||||
id: '',
|
},
|
||||||
min: '',
|
{
|
||||||
value: '',
|
value: 2,
|
||||||
type: '',
|
label: '否'
|
||||||
isAppUse: false,
|
|
||||||
},
|
|
||||||
form2: {
|
|
||||||
id: '',
|
|
||||||
min: '',
|
|
||||||
value: '',
|
|
||||||
type: '',
|
|
||||||
},
|
|
||||||
values: [{
|
|
||||||
value: 1,
|
|
||||||
label: '是'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 2,
|
|
||||||
label: '否'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
tableData: [],
|
|
||||||
checkBoxData: [] //多选框选择的值
|
|
||||||
}
|
}
|
||||||
},
|
],
|
||||||
methods: {
|
imageUrl: '',
|
||||||
handleSizeChange(val) {
|
tableData: [],
|
||||||
this.limit = val;
|
checkBoxData: [] //多选框选择的值
|
||||||
this.dataSelect();
|
|
||||||
},
|
|
||||||
handleCurrentChange(val) {
|
|
||||||
this.page = val - 1;
|
|
||||||
this.dataSelect();
|
|
||||||
},
|
|
||||||
handleClick(tab, event) {
|
|
||||||
if (tab._props.label == '全局系统配置') {
|
|
||||||
this.condition = 'xitong'
|
|
||||||
this.dataSelect()
|
|
||||||
}
|
|
||||||
if (tab._props.label == '首页配置') {
|
|
||||||
this.condition = 'shouye'
|
|
||||||
this.dataSelect()
|
|
||||||
}
|
|
||||||
if (tab._props.label == '微信配置') {
|
|
||||||
this.condition = 'weixin'
|
|
||||||
this.dataSelect()
|
|
||||||
}
|
|
||||||
if (tab._props.label == '支付宝配置') {
|
|
||||||
this.condition = 'zhifubao'
|
|
||||||
this.dataSelect()
|
|
||||||
}
|
|
||||||
if (tab._props.label == '短信配置') {
|
|
||||||
this.condition = 'duanxin'
|
|
||||||
this.dataSelect()
|
|
||||||
}
|
|
||||||
if (tab._props.label == '任务系统配置') {
|
|
||||||
this.condition = 'renwu'
|
|
||||||
this.dataSelect()
|
|
||||||
}
|
|
||||||
if (tab._props.label == '文件上传配置') {
|
|
||||||
this.condition = 'oss'
|
|
||||||
this.dataSelect()
|
|
||||||
}
|
|
||||||
if (tab._props.label == '服务费配置') {
|
|
||||||
this.condition = 'fuwufei'
|
|
||||||
this.dataSelect()
|
|
||||||
}
|
|
||||||
if (tab._props.label == '协议配置') {
|
|
||||||
this.condition = 'xieyi'
|
|
||||||
this.dataSelect()
|
|
||||||
}
|
|
||||||
if (tab._props.label == '图片配置') {
|
|
||||||
this.condition = 'image'
|
|
||||||
this.dataSelect()
|
|
||||||
}
|
|
||||||
if (tab._props.label == '开关配置') {
|
|
||||||
this.condition = 'kaiguan'
|
|
||||||
this.dataSelect()
|
|
||||||
}
|
|
||||||
if (tab._props.label == '客服配置') {
|
|
||||||
this.condition = 'kefu'
|
|
||||||
this.dataSelect()
|
|
||||||
}
|
|
||||||
|
|
||||||
},
|
|
||||||
// 修改弹框
|
|
||||||
amend(index, rows) {
|
|
||||||
this.dialogFormVisible = true;
|
|
||||||
this.form.id = rows.id;
|
|
||||||
this.form.type = rows.type
|
|
||||||
this.form.min = rows.min;
|
|
||||||
this.form.value = rows.value;
|
|
||||||
this.form.max = rows.max;
|
|
||||||
this.form.createAt = rows.createAt;
|
|
||||||
this.form.isAppUse = rows.isAppUse;
|
|
||||||
this.form.conditionFrom = rows.conditionFrom
|
|
||||||
},
|
|
||||||
updateAmendNotice(e,row){
|
|
||||||
this.$http({
|
|
||||||
url: this.$http.adornUrl('common/update'),
|
|
||||||
method: 'post',
|
|
||||||
data: this.$http.adornData({
|
|
||||||
...row,
|
|
||||||
isAppUse: e
|
|
||||||
})
|
|
||||||
}).then(({
|
|
||||||
data
|
|
||||||
}) => {
|
|
||||||
if (data && data.code === 0) {
|
|
||||||
this.$message({
|
|
||||||
message: '操作成功',
|
|
||||||
type: 'success',
|
|
||||||
duration: 1500,
|
|
||||||
onClose: () => {
|
|
||||||
}
|
|
||||||
})
|
|
||||||
this.dataSelect()
|
|
||||||
|
|
||||||
} else {
|
|
||||||
this.$message.error(data.msg)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 修改
|
|
||||||
|
|
||||||
amendNoticeTo() {
|
|
||||||
this.$http({
|
|
||||||
url: this.$http.adornUrl('common/update'),
|
|
||||||
method: 'post',
|
|
||||||
data: this.$http.adornData({
|
|
||||||
'id': this.form.id,
|
|
||||||
'type': this.form.type,
|
|
||||||
'value': this.form.value,
|
|
||||||
'min': this.form.min,
|
|
||||||
'max': this.form.max,
|
|
||||||
'createAt': this.form.createAt,
|
|
||||||
'conditionFrom': this.form.conditionFrom,
|
|
||||||
isAppUse: this.form.isAppUse
|
|
||||||
})
|
|
||||||
}).then(({
|
|
||||||
data
|
|
||||||
}) => {
|
|
||||||
if (data && data.code === 0) {
|
|
||||||
this.dialogFormVisible = false
|
|
||||||
this.$message({
|
|
||||||
message: '操作成功',
|
|
||||||
type: 'success',
|
|
||||||
duration: 1500,
|
|
||||||
onClose: () => {
|
|
||||||
}
|
|
||||||
})
|
|
||||||
this.dataSelect()
|
|
||||||
|
|
||||||
} else {
|
|
||||||
this.$message.error(data.msg)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 修改首页
|
|
||||||
amendWhether(index, rows) {
|
|
||||||
this.dialogFormVisible1 = true;
|
|
||||||
this.form2.id = rows.id;
|
|
||||||
this.form2.type = rows.type
|
|
||||||
this.form2.min = rows.min;
|
|
||||||
this.form2.value = rows.value;
|
|
||||||
this.form2.max = rows.max;
|
|
||||||
this.form2.createAt = rows.createAt;
|
|
||||||
this.form2.conditionFrom = rows.conditionFrom
|
|
||||||
},
|
|
||||||
WhetherNoticeTo() {
|
|
||||||
this.$http({
|
|
||||||
url: this.$http.adornUrl('common/update'),
|
|
||||||
method: 'post',
|
|
||||||
data: this.$http.adornData({
|
|
||||||
'id': this.form2.id,
|
|
||||||
'type': this.form2.type,
|
|
||||||
'value': this.form2.value,
|
|
||||||
'min': this.form2.min,
|
|
||||||
'max': this.form2.max,
|
|
||||||
'createAt': this.form2.createAt,
|
|
||||||
'conditionFrom': this.form2.conditionFrom
|
|
||||||
})
|
|
||||||
}).then(({
|
|
||||||
data
|
|
||||||
}) => {
|
|
||||||
if (data && data.code === 0) {
|
|
||||||
this.dialogFormVisible1 = false
|
|
||||||
this.$message({
|
|
||||||
message: '操作成功',
|
|
||||||
type: 'success',
|
|
||||||
duration: 1500,
|
|
||||||
onClose: () => {
|
|
||||||
this.dataSelect()
|
|
||||||
}
|
|
||||||
})
|
|
||||||
} else {
|
|
||||||
this.$message.error(data.msg)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 获取数据列表
|
|
||||||
dataSelect() {
|
|
||||||
this.tableDataLoading = true
|
|
||||||
this.$http({
|
|
||||||
url: this.$http.adornUrl(`common/type/condition/${this.condition}`),
|
|
||||||
method: 'get',
|
|
||||||
params: this.$http.adornParams({})
|
|
||||||
}).then(({
|
|
||||||
data
|
|
||||||
}) => {
|
|
||||||
if (data && data.code === 0) {
|
|
||||||
this.tableDataLoading = false
|
|
||||||
let returnData = data.data;
|
|
||||||
this.tableData = returnData
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
handleAvatarSuccess1(file, fileList) {
|
|
||||||
this.form.value = file.data
|
|
||||||
console.log('file.data',file.data)
|
|
||||||
},
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
this.dataSelect()
|
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
handleSizeChange(val) {
|
||||||
|
this.limit = val;
|
||||||
|
this.dataSelect();
|
||||||
|
},
|
||||||
|
handleCurrentChange(val) {
|
||||||
|
this.page = val - 1;
|
||||||
|
this.dataSelect();
|
||||||
|
},
|
||||||
|
onSubmit() {
|
||||||
|
console.log(this.ShareFriends,'111111111111')
|
||||||
|
if (!this.ShareFriends.imageUrl) {
|
||||||
|
this.$message({
|
||||||
|
message: '请选择图片',
|
||||||
|
type: 'warning',
|
||||||
|
duration: 1500
|
||||||
|
})
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
this.$refs.ShareFriends.validate((valid) => {
|
||||||
|
if (valid) {
|
||||||
|
console.log(111)
|
||||||
|
this.$http({
|
||||||
|
url: this.$http.adornUrl('/ext/sys/invite/friend/config/save'),
|
||||||
|
method: 'post',
|
||||||
|
data: this.$http.adornData({
|
||||||
|
...this.ShareFriends,
|
||||||
|
})
|
||||||
|
}).then(({
|
||||||
|
data
|
||||||
|
}) => {
|
||||||
|
if (data && data.code === 0) {
|
||||||
|
this.$message({
|
||||||
|
message: '操作成功',
|
||||||
|
type: 'success',
|
||||||
|
duration: 1500,
|
||||||
|
onClose: () => {
|
||||||
|
this.getData()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
this.$message.error(data.msg)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
console.log('error submit!!');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
handleClick(tab, event) {
|
||||||
|
if (tab._props.label == '全局系统配置') {
|
||||||
|
this.condition = 'xitong'
|
||||||
|
this.dataSelect()
|
||||||
|
}
|
||||||
|
if (tab._props.label == '首页配置') {
|
||||||
|
this.condition = 'shouye'
|
||||||
|
this.dataSelect()
|
||||||
|
}
|
||||||
|
if (tab._props.label == '微信配置') {
|
||||||
|
this.condition = 'weixin'
|
||||||
|
this.dataSelect()
|
||||||
|
}
|
||||||
|
if (tab._props.label == '支付宝配置') {
|
||||||
|
this.condition = 'zhifubao'
|
||||||
|
this.dataSelect()
|
||||||
|
}
|
||||||
|
if (tab._props.label == '短信配置') {
|
||||||
|
this.condition = 'duanxin'
|
||||||
|
this.dataSelect()
|
||||||
|
}
|
||||||
|
if (tab._props.label == '任务系统配置') {
|
||||||
|
this.condition = 'renwu'
|
||||||
|
this.dataSelect()
|
||||||
|
}
|
||||||
|
if (tab._props.label == '文件上传配置') {
|
||||||
|
this.condition = 'oss'
|
||||||
|
this.dataSelect()
|
||||||
|
}
|
||||||
|
if (tab._props.label == '服务费配置') {
|
||||||
|
this.condition = 'fuwufei'
|
||||||
|
this.dataSelect()
|
||||||
|
}
|
||||||
|
if (tab._props.label == '协议配置') {
|
||||||
|
this.condition = 'xieyi'
|
||||||
|
this.dataSelect()
|
||||||
|
}
|
||||||
|
if (tab._props.label == '图片配置') {
|
||||||
|
this.condition = 'image'
|
||||||
|
this.dataSelect()
|
||||||
|
}
|
||||||
|
if (tab._props.label == '开关配置') {
|
||||||
|
this.condition = 'kaiguan'
|
||||||
|
this.dataSelect()
|
||||||
|
}
|
||||||
|
if (tab._props.label == '客服配置') {
|
||||||
|
this.condition = 'kefu'
|
||||||
|
this.dataSelect()
|
||||||
|
}
|
||||||
|
if (tab._props.label == '分享好友页面配置') {
|
||||||
|
this.condition = 'Share'
|
||||||
|
this.getData()
|
||||||
|
}
|
||||||
|
|
||||||
|
},
|
||||||
|
getData(){
|
||||||
|
this.$http({
|
||||||
|
url: this.$http.adornUrl(`ext/sys/invite/friend/config/get`),
|
||||||
|
method: 'get',
|
||||||
|
params: {}
|
||||||
|
}).then(({
|
||||||
|
data
|
||||||
|
}) => {
|
||||||
|
if (data && data.code === 0) {
|
||||||
|
this.ShareFriends = data.data
|
||||||
|
this.imageUrl = data.data.imageUrl
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 修改弹框
|
||||||
|
amend(index, rows) {
|
||||||
|
this.dialogFormVisible = true;
|
||||||
|
this.form.id = rows.id;
|
||||||
|
this.form.type = rows.type
|
||||||
|
this.form.min = rows.min;
|
||||||
|
this.form.value = rows.value;
|
||||||
|
this.form.max = rows.max;
|
||||||
|
this.form.createAt = rows.createAt;
|
||||||
|
this.form.isAppUse = rows.isAppUse;
|
||||||
|
this.form.conditionFrom = rows.conditionFrom
|
||||||
|
},
|
||||||
|
updateAmendNotice(e, row) {
|
||||||
|
this.$http({
|
||||||
|
url: this.$http.adornUrl('common/update'),
|
||||||
|
method: 'post',
|
||||||
|
data: this.$http.adornData({
|
||||||
|
...row,
|
||||||
|
isAppUse: e
|
||||||
|
})
|
||||||
|
}).then(({
|
||||||
|
data
|
||||||
|
}) => {
|
||||||
|
if (data && data.code === 0) {
|
||||||
|
this.$message({
|
||||||
|
message: '操作成功',
|
||||||
|
type: 'success',
|
||||||
|
duration: 1500,
|
||||||
|
onClose: () => {
|
||||||
|
}
|
||||||
|
})
|
||||||
|
this.dataSelect()
|
||||||
|
|
||||||
|
} else {
|
||||||
|
this.$message.error(data.msg)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 修改
|
||||||
|
|
||||||
|
amendNoticeTo() {
|
||||||
|
this.$http({
|
||||||
|
url: this.$http.adornUrl('common/update'),
|
||||||
|
method: 'post',
|
||||||
|
data: this.$http.adornData({
|
||||||
|
'id': this.form.id,
|
||||||
|
'type': this.form.type,
|
||||||
|
'value': this.form.value,
|
||||||
|
'min': this.form.min,
|
||||||
|
'max': this.form.max,
|
||||||
|
'createAt': this.form.createAt,
|
||||||
|
'conditionFrom': this.form.conditionFrom,
|
||||||
|
isAppUse: this.form.isAppUse
|
||||||
|
})
|
||||||
|
}).then(({
|
||||||
|
data
|
||||||
|
}) => {
|
||||||
|
if (data && data.code === 0) {
|
||||||
|
this.dialogFormVisible = false
|
||||||
|
this.$message({
|
||||||
|
message: '操作成功',
|
||||||
|
type: 'success',
|
||||||
|
duration: 1500,
|
||||||
|
onClose: () => {
|
||||||
|
}
|
||||||
|
})
|
||||||
|
this.dataSelect()
|
||||||
|
|
||||||
|
} else {
|
||||||
|
this.$message.error(data.msg)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 修改首页
|
||||||
|
amendWhether(index, rows) {
|
||||||
|
this.dialogFormVisible1 = true;
|
||||||
|
this.form2.id = rows.id;
|
||||||
|
this.form2.type = rows.type
|
||||||
|
this.form2.min = rows.min;
|
||||||
|
this.form2.value = rows.value;
|
||||||
|
this.form2.max = rows.max;
|
||||||
|
this.form2.createAt = rows.createAt;
|
||||||
|
this.form2.conditionFrom = rows.conditionFrom
|
||||||
|
},
|
||||||
|
WhetherNoticeTo() {
|
||||||
|
this.$http({
|
||||||
|
url: this.$http.adornUrl('common/update'),
|
||||||
|
method: 'post',
|
||||||
|
data: this.$http.adornData({
|
||||||
|
'id': this.form2.id,
|
||||||
|
'type': this.form2.type,
|
||||||
|
'value': this.form2.value,
|
||||||
|
'min': this.form2.min,
|
||||||
|
'max': this.form2.max,
|
||||||
|
'createAt': this.form2.createAt,
|
||||||
|
'conditionFrom': this.form2.conditionFrom
|
||||||
|
})
|
||||||
|
}).then(({
|
||||||
|
data
|
||||||
|
}) => {
|
||||||
|
if (data && data.code === 0) {
|
||||||
|
this.dialogFormVisible1 = false
|
||||||
|
this.$message({
|
||||||
|
message: '操作成功',
|
||||||
|
type: 'success',
|
||||||
|
duration: 1500,
|
||||||
|
onClose: () => {
|
||||||
|
this.dataSelect()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
this.$message.error(data.msg)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 获取数据列表
|
||||||
|
dataSelect() {
|
||||||
|
this.tableDataLoading = true
|
||||||
|
this.$http({
|
||||||
|
url: this.$http.adornUrl(`common/type/condition/${this.condition}`),
|
||||||
|
method: 'get',
|
||||||
|
params: this.$http.adornParams({})
|
||||||
|
}).then(({
|
||||||
|
data
|
||||||
|
}) => {
|
||||||
|
if (data && data.code === 0) {
|
||||||
|
this.tableDataLoading = false
|
||||||
|
let returnData = data.data;
|
||||||
|
this.tableData = returnData
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
handleAvatarSuccess(file, fileList) {
|
||||||
|
this.ShareFriends.imageUrl = file.data
|
||||||
|
this.imageUrl = file.data
|
||||||
|
},
|
||||||
|
handleAvatarSuccess1(file, fileList) {
|
||||||
|
this.form.value = file.data
|
||||||
|
console.log('file.data', file.data)
|
||||||
|
},
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
this.dataSelect()
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped="scoped">
|
<style scoped="scoped">
|
||||||
.eit {
|
.eit {
|
||||||
height: 120px;
|
height: 120px;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -2,16 +2,8 @@
|
|||||||
<div>
|
<div>
|
||||||
<el-tabs v-model="activeName" @tab-click="handleClick">
|
<el-tabs v-model="activeName" @tab-click="handleClick">
|
||||||
<div style="float: right; margin-right: 2%">
|
<div style="float: right; margin-right: 2%">
|
||||||
<el-button
|
<el-button style="margin: 10px 0" :disabled="!isAuth('app:add')" size="mini" type="primary" icon="document"
|
||||||
style="margin: 10px 0"
|
v-if="upgradeData1.records.length <= 0" @click="addUpgrade">添加升级</el-button>
|
||||||
:disabled="!isAuth('app:add')"
|
|
||||||
size="mini"
|
|
||||||
type="primary"
|
|
||||||
icon="document"
|
|
||||||
v-if="upgradeData1.records.length <= 0"
|
|
||||||
@click="addUpgrade"
|
|
||||||
>添加升级</el-button
|
|
||||||
>
|
|
||||||
</div>
|
</div>
|
||||||
<el-table v-loading="tableDataLoading" :data="upgradeData1.records">
|
<el-table v-loading="tableDataLoading" :data="upgradeData1.records">
|
||||||
<el-table-column fixed prop="id" label="编号" width="80">
|
<el-table-column fixed prop="id" label="编号" width="80">
|
||||||
@@ -20,7 +12,7 @@
|
|||||||
<el-table-column prop="androidWgtUrl" label="安卓"> </el-table-column>
|
<el-table-column prop="androidWgtUrl" label="安卓"> </el-table-column>
|
||||||
<!-- <el-table-column prop="iosWgtUrl" label="苹果"> </el-table-column> -->
|
<!-- <el-table-column prop="iosWgtUrl" label="苹果"> </el-table-column> -->
|
||||||
<el-table-column prop="version" label="安卓版本"> </el-table-column>
|
<el-table-column prop="version" label="安卓版本"> </el-table-column>
|
||||||
<!-- <el-table-column prop="iosVersion" label="ios版本"> </el-table-column> -->
|
<el-table-column prop="iosVersion" label="ios版本"> </el-table-column>
|
||||||
<el-table-column prop="content" label="升级方式">
|
<el-table-column prop="content" label="升级方式">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span>{{
|
<span>{{
|
||||||
@@ -31,33 +23,18 @@
|
|||||||
<el-table-column prop="createAt" label="创建时间"> </el-table-column>
|
<el-table-column prop="createAt" label="创建时间"> </el-table-column>
|
||||||
<el-table-column label="操作" width="200">
|
<el-table-column label="操作" width="200">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-button
|
<el-button size="mini" type="primary" :disabled="!isAuth('app:update')"
|
||||||
size="mini"
|
@click="upgradebj(scope.$index, scope.row)">编辑
|
||||||
type="primary"
|
|
||||||
:disabled="!isAuth('app:update')"
|
|
||||||
@click="upgradebj(scope.$index, scope.row)"
|
|
||||||
>编辑
|
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button
|
<el-button size="mini" type="danger" :disabled="!isAuth('app:delete')" @click="upgradelete(scope.row)">删除
|
||||||
size="mini"
|
|
||||||
type="danger"
|
|
||||||
:disabled="!isAuth('app:delete')"
|
|
||||||
@click="upgradelete(scope.row)"
|
|
||||||
>删除
|
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
<div style="text-align: center; margin-top: 10px">
|
<div style="text-align: center; margin-top: 10px">
|
||||||
<el-pagination
|
<el-pagination @size-change="handleSizeChange2" @current-change="handleCurrentChange2"
|
||||||
@size-change="handleSizeChange2"
|
:page-sizes="[10, 20, 30, 40]" :page-size="limit" :current-page="page"
|
||||||
@current-change="handleCurrentChange2"
|
layout="total,sizes, prev, pager, next,jumper" :total="upgradeData1.total">
|
||||||
:page-sizes="[10, 20, 30, 40]"
|
|
||||||
:page-size="limit"
|
|
||||||
:current-page="page"
|
|
||||||
layout="total,sizes, prev, pager, next,jumper"
|
|
||||||
:total="upgradeData1.total"
|
|
||||||
>
|
|
||||||
</el-pagination>
|
</el-pagination>
|
||||||
</div>
|
</div>
|
||||||
<!-- 添加修改升级弹框 -->
|
<!-- 添加修改升级弹框 -->
|
||||||
@@ -71,66 +48,36 @@
|
|||||||
<el-input v-model="formupgrad.wgtUrl" style="width: 65%"></el-input>
|
<el-input v-model="formupgrad.wgtUrl" style="width: 65%"></el-input>
|
||||||
</el-form-item> -->
|
</el-form-item> -->
|
||||||
<div class="file-box" style="margin-bottom: 10px; display: flex">
|
<div class="file-box" style="margin-bottom: 10px; display: flex">
|
||||||
<span style="width: 200px; display: inline-block; text-align: right"
|
<span style="width: 200px; display: inline-block; text-align: right"><i
|
||||||
><i style="color: #f56c6c; margin-right: 2px">*</i>安卓包:</span
|
style="color: #f56c6c; margin-right: 2px">*</i>安卓包:</span>
|
||||||
>
|
<div style="
|
||||||
<div
|
|
||||||
style="
|
|
||||||
width: 200px;
|
width: 200px;
|
||||||
height: 148px;
|
height: 148px;
|
||||||
border: 1px dashed #c0ccda;
|
border: 1px dashed #c0ccda;
|
||||||
border-radius: 6px;
|
border-radius: 6px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
"
|
">
|
||||||
>
|
<el-upload class="avatar-uploader" v-model="formupgrad.androidWgtUrl" action="" :auto-upload="false"
|
||||||
<el-upload
|
:onChange="onChooseAndriod" :show-file-list="false" :multiple="false">
|
||||||
class="avatar-uploader"
|
<div v-if="formupgrad.androidWgtUrl" class="flex flex-col flex-xy-center">
|
||||||
v-model="formupgrad.androidWgtUrl"
|
<img src="../../assets/img/android.png" style="width: 50px; height: 50px" />
|
||||||
action=""
|
|
||||||
:auto-upload="false"
|
|
||||||
:onChange="onChooseAndriod"
|
|
||||||
:show-file-list="false"
|
|
||||||
:multiple="false"
|
|
||||||
>
|
|
||||||
<div
|
|
||||||
v-if="formupgrad.androidWgtUrl"
|
|
||||||
class="flex flex-col flex-xy-center"
|
|
||||||
>
|
|
||||||
<img
|
|
||||||
src="../../assets/img/android.png"
|
|
||||||
style="width: 50px; height: 50px"
|
|
||||||
/>
|
|
||||||
<span style="margin-top: 10px">{{
|
<span style="margin-top: 10px">{{
|
||||||
formupgrad.androidWgtUrl | name
|
formupgrad.androidWgtUrl | name
|
||||||
}}</span>
|
}}</span>
|
||||||
</div>
|
</div>
|
||||||
<i
|
<i v-if="!formupgrad.androidWgtUrl && percentage <= 0"
|
||||||
v-if="!formupgrad.androidWgtUrl && percentage <= 0"
|
class="el-icon-plus avatar-uploader-icon iconss"></i>
|
||||||
class="el-icon-plus avatar-uploader-icon iconss"
|
<el-progress type="circle" v-if="
|
||||||
></i>
|
!formupgrad.androidWgtUrl &&
|
||||||
<el-progress
|
percentage > 0 &&
|
||||||
type="circle"
|
percentage <= 100 &&
|
||||||
v-if="
|
key == 'andriod'
|
||||||
!formupgrad.androidWgtUrl &&
|
" :percentage="percentage" color="#efefef"></el-progress>
|
||||||
percentage > 0 &&
|
|
||||||
percentage <= 100 &&
|
|
||||||
key == 'andriod'
|
|
||||||
"
|
|
||||||
:percentage="percentage"
|
|
||||||
color="#efefef"
|
|
||||||
></el-progress>
|
|
||||||
</el-upload>
|
</el-upload>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<el-form-item
|
<el-form-item label="安卓地址:" :label-width="formLabelWidth" required>
|
||||||
label="安卓地址:"
|
<el-input v-model="formupgrad.androidWgtUrl" style="width: 65%"></el-input>
|
||||||
:label-width="formLabelWidth"
|
|
||||||
required
|
|
||||||
>
|
|
||||||
<el-input
|
|
||||||
v-model="formupgrad.androidWgtUrl"
|
|
||||||
style="width: 65%"
|
|
||||||
></el-input>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- <div class="file-box" style="margin-bottom: 10px; display: flex">
|
<!-- <div class="file-box" style="margin-bottom: 10px; display: flex">
|
||||||
<span style="width: 200px; display: inline-block; text-align: right"
|
<span style="width: 200px; display: inline-block; text-align: right"
|
||||||
@@ -190,50 +137,19 @@
|
|||||||
style="width: 65%"
|
style="width: 65%"
|
||||||
></el-input>
|
></el-input>
|
||||||
</el-form-item> -->
|
</el-form-item> -->
|
||||||
<el-form-item
|
<el-form-item label="安卓版本号:" :label-width="formLabelWidth" required>
|
||||||
label="安卓版本号:"
|
<el-input v-model="formupgrad.version" style="width: 65%"></el-input>
|
||||||
:label-width="formLabelWidth"
|
|
||||||
required
|
|
||||||
>
|
|
||||||
<el-input
|
|
||||||
v-model="formupgrad.version"
|
|
||||||
style="width: 65%"
|
|
||||||
></el-input>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- <el-form-item
|
<el-form-item label="ios版本号:" :label-width="formLabelWidth" required>
|
||||||
label="ios版本号:"
|
<el-input v-model="formupgrad.iosVersion" style="width: 65%"></el-input>
|
||||||
:label-width="formLabelWidth"
|
</el-form-item>
|
||||||
required
|
<el-form-item label="升级方式:" :label-width="formLabelWidth" required>
|
||||||
>
|
<el-select v-model="formupgrad.method" placeholder="请选择升级方式" style="width: 65%">
|
||||||
<el-input
|
<el-option v-for="item in methods" :key="item.value" :label="item.label" :value="item.value">
|
||||||
v-model="formupgrad.iosVersion"
|
|
||||||
style="width: 65%"
|
|
||||||
></el-input>
|
|
||||||
</el-form-item> -->
|
|
||||||
<el-form-item
|
|
||||||
label="升级方式:"
|
|
||||||
:label-width="formLabelWidth"
|
|
||||||
required
|
|
||||||
>
|
|
||||||
<el-select
|
|
||||||
v-model="formupgrad.method"
|
|
||||||
placeholder="请选择升级方式"
|
|
||||||
style="width: 65%"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in methods"
|
|
||||||
:key="item.value"
|
|
||||||
:label="item.label"
|
|
||||||
:value="item.value"
|
|
||||||
>
|
|
||||||
</el-option>
|
</el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item
|
<el-form-item label="升级内容:" :label-width="formLabelWidth" required>
|
||||||
label="升级内容:"
|
|
||||||
:label-width="formLabelWidth"
|
|
||||||
required
|
|
||||||
>
|
|
||||||
<el-input v-model="formupgrad.des" style="width: 65%"></el-input>
|
<el-input v-model="formupgrad.des" style="width: 65%"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
@@ -307,7 +223,7 @@ export default {
|
|||||||
choicenData2: [],
|
choicenData2: [],
|
||||||
upgradeData: [],
|
upgradeData: [],
|
||||||
upgradeData1: {
|
upgradeData1: {
|
||||||
records:[]
|
records: []
|
||||||
},
|
},
|
||||||
choicenData: [],
|
choicenData: [],
|
||||||
types: [
|
types: [
|
||||||
@@ -361,8 +277,8 @@ export default {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
resetFormupgrad(){
|
resetFormupgrad() {
|
||||||
for(let i in this.formupgrad){
|
for (let i in this.formupgrad) {
|
||||||
this.formupgrad[i] = "";
|
this.formupgrad[i] = "";
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -404,8 +320,8 @@ export default {
|
|||||||
console.log(data);
|
console.log(data);
|
||||||
const date = new Date();
|
const date = new Date();
|
||||||
const houzhui = "." + data.name.substr(data.name.lastIndexOf(".") + 1);
|
const houzhui = "." + data.name.substr(data.name.lastIndexOf(".") + 1);
|
||||||
const isTest=config.baseUrl.includes('web.hnsiyao.cn')?false:true
|
const isTest = config.baseUrl.includes('web.hnsiyao.cn') ? false : true
|
||||||
const appName=isTest?'test-duanju':'sy-duanju'
|
const appName = isTest ? 'test-duanju' : 'sy-duanju'
|
||||||
const name = "app/" + appName + houzhui;
|
const name = "app/" + appName + houzhui;
|
||||||
console.log(name);
|
console.log(name);
|
||||||
const fileRes = await this.ossClient.partUpload(name, data.raw, (p) => {
|
const fileRes = await this.ossClient.partUpload(name, data.raw, (p) => {
|
||||||
@@ -530,7 +446,7 @@ export default {
|
|||||||
message: "操作成功",
|
message: "操作成功",
|
||||||
type: "success",
|
type: "success",
|
||||||
duration: 1500,
|
duration: 1500,
|
||||||
onClose: () => {},
|
onClose: () => { },
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -565,7 +481,7 @@ export default {
|
|||||||
message: "操作成功",
|
message: "操作成功",
|
||||||
type: "success",
|
type: "success",
|
||||||
duration: 1500,
|
duration: 1500,
|
||||||
onClose: () => {},
|
onClose: () => { },
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
@@ -595,7 +511,7 @@ export default {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
})
|
})
|
||||||
.catch(() => {});
|
.catch(() => { });
|
||||||
},
|
},
|
||||||
|
|
||||||
// 升级配置数据列表
|
// 升级配置数据列表
|
||||||
@@ -632,16 +548,19 @@ export default {
|
|||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .avatar-uploader {
|
::v-deep .avatar-uploader {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.el-upload {
|
.el-upload {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
}
|
}
|
||||||
|
|
||||||
.customWidth {
|
.customWidth {
|
||||||
width: 80% !important;
|
width: 80% !important;
|
||||||
}
|
}
|
||||||
@@ -652,9 +571,11 @@ export default {
|
|||||||
text-align: center;
|
text-align: center;
|
||||||
border: 1px dotted rgba(67, 79, 103, 0.4);
|
border: 1px dotted rgba(67, 79, 103, 0.4);
|
||||||
}
|
}
|
||||||
|
|
||||||
.margin-auto {
|
.margin-auto {
|
||||||
margin: auto;
|
margin: auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
.cards {
|
.cards {
|
||||||
padding: 0 8px;
|
padding: 0 8px;
|
||||||
margin-bottom: 15px;
|
margin-bottom: 15px;
|
||||||
@@ -678,12 +599,15 @@ export default {
|
|||||||
height: 113px;
|
height: 113px;
|
||||||
color: rgba(0, 0, 0, 0.65);
|
color: rgba(0, 0, 0, 0.65);
|
||||||
}
|
}
|
||||||
|
|
||||||
.flex {
|
.flex {
|
||||||
display: flex;
|
display: flex;
|
||||||
}
|
}
|
||||||
|
|
||||||
.flex-col {
|
.flex-col {
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
}
|
}
|
||||||
|
|
||||||
.flex-xy-center {
|
.flex-xy-center {
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|||||||
@@ -37,7 +37,7 @@
|
|||||||
</el-button>
|
</el-button>
|
||||||
<el-button :disabled="!isAuth('coupon:update')" size="mini"
|
<el-button :disabled="!isAuth('coupon:update')" size="mini"
|
||||||
type="primary" icon="document" @click="shengCoupon(scope.row)" style="margin: 3px;">生成卡密</el-button>
|
type="primary" icon="document" @click="shengCoupon(scope.row)" style="margin: 3px;">生成卡密</el-button>
|
||||||
|
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
@@ -104,7 +104,7 @@
|
|||||||
</el-button>
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<el-table v-loading="tableDataLoadingKm" :data="tableDataKm.records" @selection-change="changeFunP" >
|
<el-table v-loading="tableDataLoadingKm" :data="tableDataKm.records" @selection-change="changeFunP" >
|
||||||
<el-table-column type="selection">
|
<el-table-column type="selection">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@@ -115,7 +115,7 @@
|
|||||||
<el-table-column prop="sdkContent" label="卡密">
|
<el-table-column prop="sdkContent" label="卡密">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="sysUserName" label="渠道商名称">
|
<el-table-column prop="sysUserName" label="渠道商名称">
|
||||||
|
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="giveNum" label="赠送会员天数">
|
<el-table-column prop="giveNum" label="赠送会员天数">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@@ -169,7 +169,7 @@
|
|||||||
<el-button type="primary" @click="amendNoticeTo()">确 定</el-button>
|
<el-button type="primary" @click="amendNoticeTo()">确 定</el-button>
|
||||||
</div>
|
</div>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
|
||||||
<!-- 生成卡密 -->
|
<!-- 生成卡密 -->
|
||||||
<el-dialog title="生成卡密" :visible.sync="dialogFormVisible3" center width="70%">
|
<el-dialog title="生成卡密" :visible.sync="dialogFormVisible3" center width="70%">
|
||||||
<div style="margin-bottom: 10px;">
|
<div style="margin-bottom: 10px;">
|
||||||
@@ -235,7 +235,7 @@
|
|||||||
<el-table-column prop="sdkContent" label="卡密">
|
<el-table-column prop="sdkContent" label="卡密">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="sysUserName" label="渠道商名称">
|
<el-table-column prop="sysUserName" label="渠道商名称">
|
||||||
|
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="giveNum" label="赠送会员天数" width="80">
|
<el-table-column prop="giveNum" label="赠送会员天数" width="80">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@@ -284,7 +284,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="qdRate" header-align="center" align="center" label="渠道佣金">
|
<el-table-column prop="qdRate" header-align="center" align="center" label="渠道佣金">
|
||||||
<!-- <template slot-scope="scope">
|
<!-- <template slot-scope="scope">
|
||||||
<span v-for="(item,index) in scope.row.roleEntityList" :key="index">{{item.roleName}} </span>
|
<span v-for="(item,index) in scope.row.roleEntityList" :key="index">{{item.roleName}} </span>
|
||||||
</template> -->
|
</template> -->
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="qdCode" header-align="center" align="center" label="渠道码">
|
<el-table-column prop="qdCode" header-align="center" align="center" label="渠道码">
|
||||||
@@ -443,7 +443,7 @@
|
|||||||
this.page = val;
|
this.page = val;
|
||||||
this.dataSelectKm()
|
this.dataSelectKm()
|
||||||
},
|
},
|
||||||
|
|
||||||
handleSizeChangeY(val) {
|
handleSizeChangeY(val) {
|
||||||
this.size1 = val;
|
this.size1 = val;
|
||||||
this.dataSelectYhq()
|
this.dataSelectYhq()
|
||||||
@@ -525,9 +525,9 @@
|
|||||||
});
|
});
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (this.titles == '添加') {
|
if (this.titles == '添加') {
|
||||||
var url = 'couponCard/insertCouponCardType'
|
var url = 'couponCard/insertCouponCardType'
|
||||||
} else {
|
} else {
|
||||||
@@ -566,7 +566,7 @@
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
//删除
|
//删除
|
||||||
@@ -628,7 +628,7 @@
|
|||||||
dataSelect() {
|
dataSelect() {
|
||||||
this.tableDataLoading = true
|
this.tableDataLoading = true
|
||||||
this.$http({
|
this.$http({
|
||||||
url: this.$http.adornUrl('admin/sdkType/getSdkTypeList'),
|
url: this.$http.adornUrl('sdkType/getSdkTypeList'),
|
||||||
method: 'get',
|
method: 'get',
|
||||||
params: this.$http.adornParams({
|
params: this.$http.adornParams({
|
||||||
'page': this.page,
|
'page': this.page,
|
||||||
@@ -746,7 +746,7 @@
|
|||||||
'typeId': this.couponCardTypeId,
|
'typeId': this.couponCardTypeId,
|
||||||
'num':this.num,
|
'num':this.num,
|
||||||
'sysUserId':this.sysUserId,
|
'sysUserId':this.sysUserId,
|
||||||
|
|
||||||
})
|
})
|
||||||
}).then(({
|
}).then(({
|
||||||
data
|
data
|
||||||
@@ -771,7 +771,7 @@
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 卡密列表
|
// 卡密列表
|
||||||
@@ -784,7 +784,7 @@
|
|||||||
// this.startTime = this.info2.stockDate2
|
// this.startTime = this.info2.stockDate2
|
||||||
// }
|
// }
|
||||||
this.$http({
|
this.$http({
|
||||||
url: this.$http.adornUrl('admin/sdkInfo/getSdkList'),
|
url: this.$http.adornUrl('/admin/sdkInfo/getSdkList'),
|
||||||
method: 'get',
|
method: 'get',
|
||||||
params: this.$http.adornParams({
|
params: this.$http.adornParams({
|
||||||
'page': this.page,
|
'page': this.page,
|
||||||
@@ -804,7 +804,7 @@
|
|||||||
this.tableDataLoadingKm = false
|
this.tableDataLoadingKm = false
|
||||||
let returnData = data.data;
|
let returnData = data.data;
|
||||||
this.tableDataKm = returnData
|
this.tableDataKm = returnData
|
||||||
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 详情跳转
|
// 详情跳转
|
||||||
@@ -827,7 +827,7 @@
|
|||||||
this.dataSelectKm()
|
this.dataSelectKm()
|
||||||
this.dialogFormVisibleKm = true
|
this.dialogFormVisibleKm = true
|
||||||
},
|
},
|
||||||
|
|
||||||
// 导出
|
// 导出
|
||||||
excelStair(){
|
excelStair(){
|
||||||
// var endTime = this.endTime
|
// var endTime = this.endTime
|
||||||
@@ -847,7 +847,7 @@
|
|||||||
'endTime': this.endTime,
|
'endTime': this.endTime,
|
||||||
'startTime': this.startTime,
|
'startTime': this.startTime,
|
||||||
'sysUserName':this.sysUserNameT
|
'sysUserName':this.sysUserNameT
|
||||||
|
|
||||||
})
|
})
|
||||||
}).then(({
|
}).then(({
|
||||||
data
|
data
|
||||||
@@ -906,7 +906,7 @@
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
})
|
})
|
||||||
}).catch(() => {})
|
}).catch(() => {})
|
||||||
},
|
},
|
||||||
@@ -949,7 +949,7 @@
|
|||||||
qudaoBtn(){
|
qudaoBtn(){
|
||||||
this.getDataList()
|
this.getDataList()
|
||||||
this.dialogFormVisibleQd = true
|
this.dialogFormVisibleQd = true
|
||||||
|
|
||||||
},
|
},
|
||||||
getDataList() {
|
getDataList() {
|
||||||
this.dataListLoading = true
|
this.dataListLoading = true
|
||||||
@@ -979,7 +979,7 @@
|
|||||||
this.sysUserName = row.username
|
this.sysUserName = row.username
|
||||||
this.dialogFormVisibleQd = false
|
this.dialogFormVisibleQd = false
|
||||||
},
|
},
|
||||||
|
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.dataSelect()
|
this.dataSelect()
|
||||||
|
|||||||
@@ -48,26 +48,27 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6" class="cards">
|
|
||||||
<div class="box">
|
|
||||||
<div class="box_num">
|
|
||||||
<div class="box_color">总收入</div>
|
|
||||||
<div class="text_color">
|
|
||||||
<span>{{
|
|
||||||
tableData.totalRevenue ? tableData.totalRevenue : 0
|
|
||||||
}}</span
|
|
||||||
>元
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="6" class="cards">
|
<el-col :span="6" class="cards">
|
||||||
<div class="box">
|
<div class="box">
|
||||||
<div class="box_num">
|
<div class="box_num">
|
||||||
<div class="box_color">今日收入</div>
|
<div class="box_color">今日收入</div>
|
||||||
<div class="text_color">
|
<div class="text_color">
|
||||||
<span>{{
|
<span>{{
|
||||||
tableData.todayRevenue ? tableData.todayRevenue : 0
|
tableData.todayPayAmount ? tableData.todayPayAmount : 0
|
||||||
|
}}</span
|
||||||
|
>元
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="6" class="cards">
|
||||||
|
<div class="box">
|
||||||
|
<div class="box_num">
|
||||||
|
<div class="box_color">今日订单笔数</div>
|
||||||
|
<div class="text_color">
|
||||||
|
<span>{{
|
||||||
|
tableData.todayPayCount ? tableData.todayPayCount : 0
|
||||||
}}</span
|
}}</span
|
||||||
>元
|
>元
|
||||||
</div>
|
</div>
|
||||||
@@ -77,10 +78,10 @@
|
|||||||
<el-col :span="6" class="cards">
|
<el-col :span="6" class="cards">
|
||||||
<div class="box">
|
<div class="box">
|
||||||
<div class="box_num">
|
<div class="box_num">
|
||||||
<div class="box_color">本月收入</div>
|
<div class="box_color">今日提现</div>
|
||||||
<div class="text_color">
|
<div class="text_color">
|
||||||
<span>{{
|
<span>{{
|
||||||
tableData.monthRevenue ? tableData.monthRevenue : 0
|
tableData.todayExtractAmount ? tableData.todayExtractAmount : 0
|
||||||
}}</span
|
}}</span
|
||||||
>元
|
>元
|
||||||
</div>
|
</div>
|
||||||
@@ -90,10 +91,10 @@
|
|||||||
<el-col :span="6" class="cards">
|
<el-col :span="6" class="cards">
|
||||||
<div class="box">
|
<div class="box">
|
||||||
<div class="box_num">
|
<div class="box_num">
|
||||||
<div class="box_color">本年收入</div>
|
<div class="box_color">今日提现笔数</div>
|
||||||
<div class="text_color">
|
<div class="text_color">
|
||||||
<span>{{
|
<span>{{
|
||||||
tableData.yearRevenue ? tableData.yearRevenue : 0
|
tableData.todayExtractCount ? tableData.todayExtractCount : 0
|
||||||
}}</span
|
}}</span
|
||||||
>元
|
>元
|
||||||
</div>
|
</div>
|
||||||
@@ -445,6 +446,51 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
<el-col :span="6" class="cards">
|
||||||
|
<div class="box">
|
||||||
|
<div class="box_num">
|
||||||
|
<div class="box_color">下级签到奖励</div>
|
||||||
|
<div class="text_color">
|
||||||
|
<span>{{ orderStat.signInAwardMoney ? orderStat.signInAwardMoney : 0 }}</span
|
||||||
|
>元
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="6" class="cards">
|
||||||
|
<div class="box">
|
||||||
|
<div class="box_num">
|
||||||
|
<div class="box_color">分享达标奖励</div>
|
||||||
|
<div class="text_color">
|
||||||
|
<span>{{ orderStat.shareAwardMoney ? orderStat.shareAwardMoney : 0 }}</span
|
||||||
|
>元
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="6" class="cards">
|
||||||
|
<div class="box">
|
||||||
|
<div class="box_num">
|
||||||
|
<div class="box_color">新人福利任务完成</div>
|
||||||
|
<div class="text_color">
|
||||||
|
<span>{{ orderStat.newUserTaskDoneAwardMoney ? orderStat.newUserTaskDoneAwardMoney : 0 }}</span
|
||||||
|
>元
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="6" class="cards">
|
||||||
|
<div class="box">
|
||||||
|
<div class="box_num">
|
||||||
|
<div class="box_color">邀请15人已达标</div>
|
||||||
|
<div class="text_color">
|
||||||
|
<span>{{ orderStat.inviteTaskDoneAwardMoney ? orderStat.inviteTaskDoneAwardMoney : 0 }}</span
|
||||||
|
>元
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
|
||||||
</el-row>
|
</el-row>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
<el-tab-pane label="分销统计" name="five">
|
<el-tab-pane label="分销统计" name="five">
|
||||||
@@ -1078,7 +1124,10 @@ export default {
|
|||||||
this.tableDataLoading = false;
|
this.tableDataLoading = false;
|
||||||
if (data.code == 0) {
|
if (data.code == 0) {
|
||||||
let returnData = data.data;
|
let returnData = data.data;
|
||||||
this.orderStat = returnData;
|
this.$nextTick(() => {
|
||||||
|
this.orderStat = returnData;
|
||||||
|
});
|
||||||
|
// this.orderStat = returnData;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -18,7 +18,7 @@
|
|||||||
</el-input>
|
</el-input>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="10" class="login-captcha">
|
<el-col :span="10" class="login-captcha">
|
||||||
<img :src="captchaPath" @click="getCaptcha()" alt="">
|
<img :src="captchaPath" @click="getCaptcha()" alt="">
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -35,6 +35,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import { getUUID } from '@/utils'
|
import { getUUID } from '@/utils'
|
||||||
import { entryName } from '@/utils/httpRequest'
|
import { entryName } from '@/utils/httpRequest'
|
||||||
|
import { method } from 'lodash'
|
||||||
export default {
|
export default {
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
@@ -84,16 +85,24 @@
|
|||||||
this.$router.replace({ name: 'home' })
|
this.$router.replace({ name: 'home' })
|
||||||
} else {
|
} else {
|
||||||
this.getCaptcha()
|
this.getCaptcha()
|
||||||
this.$message.error(data.msg)
|
this.$message.error(data.message)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 获取验证码
|
// 获取验证码
|
||||||
getCaptcha () {
|
async getCaptcha () {
|
||||||
this.dataForm.uuid = getUUID()
|
this.dataForm.uuid = getUUID()
|
||||||
this.captchaPath = this.$http.adornUrl(`/captcha.jpg?uuid=${this.dataForm.uuid}`)
|
const res =await this.$http({
|
||||||
|
url:'indetcode/getCode',
|
||||||
|
method:'get',
|
||||||
|
params:{
|
||||||
|
uuid:this.dataForm.uuid
|
||||||
|
}
|
||||||
|
})
|
||||||
|
console.log(res);
|
||||||
|
this.captchaPath=res.data.data.img
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,46 +1,24 @@
|
|||||||
<template>
|
<template>
|
||||||
<el-dialog
|
<el-dialog :title="form.id ? '修改红包' : '新增红包'" width="500px" :visible.sync="dialogVisible" @close="diaClose"
|
||||||
:title="form.id ? '修改红包' : '新增红包'"
|
:close-on-click-modal="true">
|
||||||
width="500px"
|
|
||||||
:visible.sync="dialogVisible"
|
|
||||||
@close="diaClose"
|
|
||||||
:close-on-click-modal="true"
|
|
||||||
>
|
|
||||||
<el-form :model="form" label-width="100px">
|
<el-form :model="form" label-width="100px">
|
||||||
<el-form-item label="描述" required>
|
<el-form-item label="描述" required>
|
||||||
<el-input v-model="form.name"></el-input>
|
<el-input v-model="form.name"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="从第几次开始变化">
|
<el-form-item label="从第几次开始变化">
|
||||||
<el-input-number
|
<el-input-number :min="0" stepstep-strictly v-model="form.num"></el-input-number>
|
||||||
:min="0"
|
|
||||||
stepstep-strictly
|
|
||||||
v-model="form.num"
|
|
||||||
></el-input-number>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="最大金额" required>
|
<el-form-item label="最大金额" required>
|
||||||
<el-input-number
|
<el-input-number :min="0" :max="100" v-model="form.maxAmount"></el-input-number>
|
||||||
:min="0"
|
|
||||||
:max="100"
|
|
||||||
v-model="form.maxAmount"
|
|
||||||
></el-input-number>
|
|
||||||
<span>元</span>
|
<span>元</span>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="中奖概率" required>
|
<el-form-item label="中奖概率" required>
|
||||||
<el-input-number
|
<el-input-number :min="0" :max="1" :step="0.1" v-model="form.random"></el-input-number>
|
||||||
:min="0"
|
|
||||||
:max="1"
|
|
||||||
:step="0.1"
|
|
||||||
v-model="form.random"
|
|
||||||
></el-input-number>
|
|
||||||
<span></span>
|
<span></span>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="是否启用" required>
|
<el-form-item label="是否启用" required>
|
||||||
<el-switch
|
<el-switch v-model="form.status" :inactive-value="0" :active-value="1"></el-switch>
|
||||||
v-model="form.status"
|
|
||||||
:inactive-value="0"
|
|
||||||
:active-value="1"
|
|
||||||
></el-switch>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
|
|
||||||
@@ -56,9 +34,9 @@ import { $redPackApi } from "@/api/red-pack.js";
|
|||||||
import { isNull } from "@/utils/validate.js";
|
import { isNull } from "@/utils/validate.js";
|
||||||
export default {
|
export default {
|
||||||
props: {
|
props: {
|
||||||
source:{
|
source: {
|
||||||
type:[String,Number],
|
type: [String, Number],
|
||||||
default:1
|
default: 1
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
@@ -82,7 +60,7 @@ export default {
|
|||||||
console.log(item);
|
console.log(item);
|
||||||
this.dialogVisible = true;
|
this.dialogVisible = true;
|
||||||
this.item = item;
|
this.item = item;
|
||||||
if (item!==undefined) {
|
if (item !== undefined) {
|
||||||
this.form = {
|
this.form = {
|
||||||
...item,
|
...item,
|
||||||
num: item.num === "" || item.num === null ? undefined : item.num,
|
num: item.num === "" || item.num === null ? undefined : item.num,
|
||||||
@@ -114,12 +92,12 @@ export default {
|
|||||||
}
|
}
|
||||||
console.log(id);
|
console.log(id);
|
||||||
const res = id
|
const res = id
|
||||||
? await $redPackApi.update({ ...this.form, num: this.form.num || "" ,discType:this.source})
|
? await $redPackApi.update({ ...this.form, num: this.form.num || "", discType: this.source, type: this.source })
|
||||||
: await $redPackApi.add({...this.form,discType:this.source});
|
: await $redPackApi.add({ ...this.form, discType: this.source, type: this.source });
|
||||||
console.log(res);
|
console.log(res);
|
||||||
const { data, msg } = res;
|
const { data, msg } = res;
|
||||||
if (data && data.code == 0) {
|
if (data && data.code == 0) {
|
||||||
this.$message.success(id?"修改成功":"添加成功");
|
this.$message.success(id ? "修改成功" : "添加成功");
|
||||||
this.$emit("refresh");
|
this.$emit("refresh");
|
||||||
this.diaClose();
|
this.diaClose();
|
||||||
} else {
|
} else {
|
||||||
@@ -133,9 +111,11 @@ export default {
|
|||||||
.el-form-item__label {
|
.el-form-item__label {
|
||||||
text-align: left;
|
text-align: left;
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .el-form-item__label {
|
::v-deep .el-form-item__label {
|
||||||
text-align: left;
|
text-align: left;
|
||||||
}
|
}
|
||||||
|
|
||||||
.upload-file-box {
|
.upload-file-box {
|
||||||
border-radius: 6px;
|
border-radius: 6px;
|
||||||
width: 148px;
|
width: 148px;
|
||||||
@@ -145,6 +125,7 @@ export default {
|
|||||||
align-items: center;
|
align-items: center;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
border: 1px solid #c0c4cc;
|
border: 1px solid #c0c4cc;
|
||||||
|
|
||||||
img {
|
img {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
|||||||
@@ -42,8 +42,28 @@
|
|||||||
<el-table v-loading="tableData.loading" :data="tableData.list" border stripe>
|
<el-table v-loading="tableData.loading" :data="tableData.list" border stripe>
|
||||||
<el-table-column label="ID" prop="id" width="80"></el-table-column>
|
<el-table-column label="ID" prop="id" width="80"></el-table-column>
|
||||||
<el-table-column label="用户ID" prop="userId" width="100"></el-table-column>
|
<el-table-column label="用户ID" prop="userId" width="100"></el-table-column>
|
||||||
<el-table-column label="用户名" prop="userName" width="150"></el-table-column>
|
<el-table-column label="用户名" prop="userName" width="200">
|
||||||
<el-table-column label="提现信息">
|
<template slot-scope="scope">
|
||||||
|
<template v-if="scope.row.relationId">
|
||||||
|
<div class="danger_user">
|
||||||
|
<div class="user_info">
|
||||||
|
<i class="icon el-icon-warning"></i>
|
||||||
|
危险用户:{{ scope.row.userName }}
|
||||||
|
</div>
|
||||||
|
<el-tag type="danger" disable-transitions>{{ scope.row.relationId }}</el-tag>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<template v-else>
|
||||||
|
{{ scope.row.userName }}
|
||||||
|
</template>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="提现账号" prop="zhifubao" width="200">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
{{ scope.row.zhifubaoName }} / {{ scope.row.zhifubao }}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="提现信息" width="200">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<div>提现金额:¥{{ scope.row.money }}</div>
|
<div>提现金额:¥{{ scope.row.money }}</div>
|
||||||
<div>手续费:¥{{ scope.row.rate }}</div>
|
<div>手续费:¥{{ scope.row.rate }}</div>
|
||||||
@@ -63,11 +83,6 @@
|
|||||||
<div>待审提现申请笔数:{{ scope.row.verifyCount }}</div>
|
<div>待审提现申请笔数:{{ scope.row.verifyCount }}</div>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="支付宝信息" prop="zhifubao" width="200">
|
|
||||||
<template slot-scope="scope">
|
|
||||||
{{ scope.row.zhifubaoName }} / {{ scope.row.zhifubao }}
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="申请时间" prop="createAt" width="200"></el-table-column>
|
<el-table-column label="申请时间" prop="createAt" width="200"></el-table-column>
|
||||||
<el-table-column label="转账时间" prop="outAt" width="200"></el-table-column>
|
<el-table-column label="转账时间" prop="outAt" width="200"></el-table-column>
|
||||||
<el-table-column label="状态" prop="state" width="200">
|
<el-table-column label="状态" prop="state" width="200">
|
||||||
@@ -78,13 +93,8 @@
|
|||||||
<el-tag type="success" v-if="scope.row.state == 1" disable-transitions>
|
<el-tag type="success" v-if="scope.row.state == 1" disable-transitions>
|
||||||
成功
|
成功
|
||||||
</el-tag>
|
</el-tag>
|
||||||
<div style="display: flex;flex-direction: column;" v-if="scope.row.state == 2">
|
<div class="tag_danger" v-if="scope.row.state == 2">
|
||||||
<div>
|
失败:{{ scope.row.refund }}
|
||||||
<el-tag type="danger" disable-transitions>
|
|
||||||
失败
|
|
||||||
</el-tag>
|
|
||||||
</div>
|
|
||||||
<div>原因:{{ scope.row.refund }}</div>
|
|
||||||
</div>
|
</div>
|
||||||
<el-tag type="warning" v-if="scope.row.state == 3" disable-transitions>
|
<el-tag type="warning" v-if="scope.row.state == 3" disable-transitions>
|
||||||
待审核
|
待审核
|
||||||
@@ -130,6 +140,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
import dayjs from 'dayjs'
|
||||||
import { cashOutAuditPage, cashOutAuditAudit } from "@/api/withdraw.js";
|
import { cashOutAuditPage, cashOutAuditAudit } from "@/api/withdraw.js";
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
@@ -159,7 +170,7 @@ export default {
|
|||||||
id: "",
|
id: "",
|
||||||
isAgree: "1",
|
isAgree: "1",
|
||||||
refund: "",
|
refund: "",
|
||||||
userId:''
|
userId: ''
|
||||||
},
|
},
|
||||||
rules: {
|
rules: {
|
||||||
isAgree: [],
|
isAgree: [],
|
||||||
@@ -217,10 +228,12 @@ export default {
|
|||||||
this.cashOutAuditPage();
|
this.cashOutAuditPage();
|
||||||
},
|
},
|
||||||
// 确认选择日期
|
// 确认选择日期
|
||||||
changeTime() {
|
changeTime(e) {
|
||||||
|
console.log(e);
|
||||||
|
this.timeValue = e
|
||||||
if (this.timeValue.length == 2) {
|
if (this.timeValue.length == 2) {
|
||||||
this.query.startTime = this.timeValue[0];
|
this.query.startTime = dayjs(this.timeValue[0]).format("YYYY-MM-DD HH:mm:ss");
|
||||||
this.query.endTime = this.timeValue[1];
|
this.query.endTime = dayjs(this.timeValue[1]).format("YYYY-MM-DD HH:mm:ss");
|
||||||
} else {
|
} else {
|
||||||
this.query.startTime = "";
|
this.query.startTime = "";
|
||||||
this.query.endTime = "";
|
this.query.endTime = "";
|
||||||
@@ -256,3 +269,31 @@ export default {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="scss">
|
||||||
|
.danger_user {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
gap: 4px;
|
||||||
|
|
||||||
|
.user_info {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
$color: #F56C6C;
|
||||||
|
color: $color;
|
||||||
|
gap: 4px;
|
||||||
|
|
||||||
|
.icon {
|
||||||
|
color: $color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.tag_danger {
|
||||||
|
background-color: rgba(245, 108, 108, .1);
|
||||||
|
color: #f56c6c;
|
||||||
|
border-radius: 4px;
|
||||||
|
border: 1px solid rgba(245, 108, 108, .2);
|
||||||
|
padding: 2px 10px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|||||||
@@ -72,9 +72,9 @@
|
|||||||
<div>提现次数:{{ scope.row.subCount }}</div>
|
<div>提现次数:{{ scope.row.subCount }}</div>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="支付宝信息" prop="zhifubao">
|
<el-table-column label="提现账号" prop="zhifubao">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
{{ scope.row.zhifubaoName }} / {{ scope.row.zhifubao }}
|
{{ scope.row.zhiFuBaoName }} / {{ scope.row.zhiFuBao }}
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<el-tab-pane label="提现审核" name="withdraw">
|
<el-tab-pane label="提现审核" name="withdraw">
|
||||||
<WithdrawManage></WithdrawManage>
|
<WithdrawManage></WithdrawManage>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
<el-tab-pane label="支付宝提现统计" name="withdrawTotal">
|
<el-tab-pane label="提现统计" name="withdrawTotal">
|
||||||
<WithdrawTotal></WithdrawTotal>
|
<WithdrawTotal></WithdrawTotal>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
<!-- 拒绝弹框 -->
|
<!-- 拒绝弹框 -->
|
||||||
@@ -228,7 +228,7 @@
|
|||||||
<div class="box_num">
|
<div class="box_num">
|
||||||
<div class="box_color">累计提现金额</div>
|
<div class="box_color">累计提现金额</div>
|
||||||
<div class="text_color">
|
<div class="text_color">
|
||||||
<span>{{ withdrawData.sumMoney }}</span>元
|
<span> {{ formatMoney(withdrawData.sumMoney) }}</span>元
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -529,6 +529,10 @@
|
|||||||
<el-tab-pane label="现金红包抽奖金额配置" name="senven">
|
<el-tab-pane label="现金红包抽奖金额配置" name="senven">
|
||||||
<div class="">
|
<div class="">
|
||||||
<div style="margin-bottom: 20px">
|
<div style="margin-bottom: 20px">
|
||||||
|
<el-select @change="redPackInit" v-model="zhuanPanType" placeholder="请选择">
|
||||||
|
<el-option v-for="item in zhuanPanTypes" :key="item.value" :label="item.label" :value="item.value">
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
<el-button type="primary" @click="openPop('refAddRedPack')">添加</el-button>
|
<el-button type="primary" @click="openPop('refAddRedPack')">添加</el-button>
|
||||||
</div>
|
</div>
|
||||||
<el-table :border="true" :data="redPackData">
|
<el-table :border="true" :data="redPackData">
|
||||||
@@ -556,7 +560,7 @@
|
|||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
</el-tabs>
|
</el-tabs>
|
||||||
<pop-add-zhuanpan ref="refAddZhuanpan" @refresh="zhuanPanRefresh" :source="zhuanPanType"></pop-add-zhuanpan>
|
<pop-add-zhuanpan ref="refAddZhuanpan" @refresh="zhuanPanRefresh" :source="zhuanPanType"></pop-add-zhuanpan>
|
||||||
<pop-add-red-pack ref="refAddRedPack" @refresh="redpackRefresh"></pop-add-red-pack>
|
<pop-add-red-pack ref="refAddRedPack" @refresh="redpackRefresh" :source="zhuanPanType"></pop-add-red-pack>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -705,6 +709,10 @@ export default {
|
|||||||
};
|
};
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
formatMoney(value) {
|
||||||
|
if (!value) return '0.00';
|
||||||
|
return Number(value).toFixed(2);
|
||||||
|
},
|
||||||
zhuanPanTypeChange() {
|
zhuanPanTypeChange() {
|
||||||
this.zhuanPanInit();
|
this.zhuanPanInit();
|
||||||
},
|
},
|
||||||
@@ -1098,7 +1106,8 @@ export default {
|
|||||||
const { data } = await $redPackApi.getList({
|
const { data } = await $redPackApi.getList({
|
||||||
page: this.page,
|
page: this.page,
|
||||||
limit: this.limit,
|
limit: this.limit,
|
||||||
source: this.zhuanPanType
|
source: this.zhuanPanType,
|
||||||
|
type: this.zhuanPanType
|
||||||
});
|
});
|
||||||
this.redPackData = data.data.records;
|
this.redPackData = data.data.records;
|
||||||
},
|
},
|
||||||
|
|||||||
164
src/views/finance/lotteryInquiry.vue
Normal file
164
src/views/finance/lotteryInquiry.vue
Normal file
@@ -0,0 +1,164 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<div style="display: inline-block;">
|
||||||
|
<el-form :inline="true" :model="formInline" class="demo-form-inline">
|
||||||
|
<el-form-item label="用户昵称/手机号">
|
||||||
|
<el-input v-model="formInline.keywords" placeholder="请输入用户昵称/手机号" clearable />
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item>
|
||||||
|
<el-button type="primary" icon="Search" @click="onSubmit">搜索</el-button>
|
||||||
|
<el-button icon="Refresh" @click="reset">重置</el-button>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
<el-table :data="rechargeData.list">
|
||||||
|
<el-table-column prop="userId" label="ID"></el-table-column>
|
||||||
|
<el-table-column prop="avatar" label="头像">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<img :src="scope.row.avatar" alt="" style="width: 50px; height: 50px; border-radius: 50%;" />
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="userName" label="用户昵称"></el-table-column>
|
||||||
|
<el-table-column prop="phone" label="手机号"></el-table-column>
|
||||||
|
<el-table-column prop="todayUnlocked" label="今日订单数">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="todayDrawCount" label="当日抽奖次数">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="" label="操作">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<el-button type="text" @click="rewardDetails(scope.row)">查看抽奖详情</el-button>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<div style="text-align: center;margin-top: 10px;">
|
||||||
|
<el-pagination @size-change="handleSizeChange4" @current-change="handleCurrentChange4"
|
||||||
|
:page-sizes="[10, 20, 30, 40]" :page-size="rechargeData.limit" :current-page="rechargeData.page"
|
||||||
|
layout="total,sizes, prev, pager, next,jumper" :total="rechargeData.totalCount">
|
||||||
|
</el-pagination>
|
||||||
|
</div>
|
||||||
|
<!-- 详情 -->
|
||||||
|
<el-dialog title="抽奖详情" :visible.sync="dialogVisible" width="50%">
|
||||||
|
<div>抽奖次数合计:{{ rechargeDataA.totalCount }} </div>
|
||||||
|
<el-table :data="rechargeDataA.list">
|
||||||
|
<el-table-column prop="id" label="ID"></el-table-column>
|
||||||
|
<el-table-column prop="name" label="抽奖结果"></el-table-column>
|
||||||
|
<el-table-column prop="number" label="金额"></el-table-column>
|
||||||
|
<el-table-column prop="createTime" label="抽奖时间"></el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<div style="text-align: center;margin-top: 10px;">
|
||||||
|
<el-pagination @size-change="handleSizeChange4A" @current-change="handleCurrentChange4A"
|
||||||
|
:page-sizes="[10, 20, 30, 40]" :page-size="rechargeDataA.limit" :current-page="rechargeDataA.page"
|
||||||
|
layout="total,sizes, prev, pager, next,jumper" :total="rechargeDataA.totalCount">
|
||||||
|
</el-pagination>
|
||||||
|
</div>
|
||||||
|
</el-dialog>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
rechargeDataList: [],
|
||||||
|
formInline: {
|
||||||
|
keywords: ''
|
||||||
|
},
|
||||||
|
rechargeData: {
|
||||||
|
totalCount: 0,
|
||||||
|
list: [],
|
||||||
|
page: 1,
|
||||||
|
limit: 10,
|
||||||
|
},
|
||||||
|
rechargeDataA: {
|
||||||
|
totalCount: 0,
|
||||||
|
list: [],
|
||||||
|
page: 1,
|
||||||
|
limit: 10,
|
||||||
|
itemUserId: ''
|
||||||
|
},
|
||||||
|
list: [],
|
||||||
|
dialogVisible: false,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
this.getRechargeData()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
goUrl(item) {
|
||||||
|
this.$router.push({ path: '/orderCenter', query: { userName: item.userName } })
|
||||||
|
},
|
||||||
|
onSubmit() {
|
||||||
|
this.rechargeData.page = 1
|
||||||
|
this.rechargeData.limit = 10
|
||||||
|
this.getRechargeData()
|
||||||
|
}, reset() {
|
||||||
|
this.formInline = {
|
||||||
|
keywords: ''
|
||||||
|
}
|
||||||
|
this.getRechargeData()
|
||||||
|
},
|
||||||
|
getRechargeData() {
|
||||||
|
this.$http.get('/ext/sys/lottery/count/query/page', {
|
||||||
|
params: {
|
||||||
|
page: this.rechargeData.page,
|
||||||
|
limit: this.rechargeData.limit,
|
||||||
|
keywords: this.formInline.keywords
|
||||||
|
}
|
||||||
|
}).then(response => {
|
||||||
|
if (response.data.code === 0) {
|
||||||
|
this.rechargeData.list = response.data.data.list
|
||||||
|
this.rechargeData.totalCount = response.data.data.totalCount
|
||||||
|
// this.rechargeData = response.data.data
|
||||||
|
} else {
|
||||||
|
this.$message.error(response.data.msg)
|
||||||
|
}
|
||||||
|
}).catch(error => {
|
||||||
|
console.error(error)
|
||||||
|
})
|
||||||
|
}, rewardDetails(item) {
|
||||||
|
if (item) {
|
||||||
|
this.rechargeDataA.itemUserId = item.userId
|
||||||
|
}
|
||||||
|
this.$http.get('/ext/sys/lottery/detail/page', {
|
||||||
|
params: {
|
||||||
|
page: this.rechargeDataA.page,
|
||||||
|
limit: this.rechargeDataA.limit,
|
||||||
|
userId: this.rechargeDataA.itemUserId
|
||||||
|
}
|
||||||
|
}).then(response => {
|
||||||
|
if (response.data.code === 0) {
|
||||||
|
this.rechargeDataA.list = response.data.data.list
|
||||||
|
this.rechargeDataA.totalCount = response.data.data.totalCount
|
||||||
|
|
||||||
|
this.dialogVisible = true
|
||||||
|
} else {
|
||||||
|
this.$message.error(response.data.message)
|
||||||
|
}
|
||||||
|
}).catch(error => {
|
||||||
|
console.error(error)
|
||||||
|
this.$message.error('获取数据失败')
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
handleSizeChange4(val) {
|
||||||
|
this.rechargeData.limit = val
|
||||||
|
this.rechargeData.page = 1
|
||||||
|
this.getRechargeData()
|
||||||
|
},
|
||||||
|
handleCurrentChange4(val) {
|
||||||
|
this.rechargeData.page = val
|
||||||
|
this.getRechargeData()
|
||||||
|
},
|
||||||
|
handleSizeChange4A(val) {
|
||||||
|
this.rechargeDataA.limit = val
|
||||||
|
this.rechargeDataA.page = 1
|
||||||
|
this.rewardDetails()
|
||||||
|
},
|
||||||
|
handleCurrentChange4A(val) {
|
||||||
|
console.log(val, '11111111111')
|
||||||
|
this.rechargeDataA.page = val
|
||||||
|
this.rewardDetails()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
231
src/views/finance/shareFriends.vue
Normal file
231
src/views/finance/shareFriends.vue
Normal file
@@ -0,0 +1,231 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<div style="display: inline-block;">
|
||||||
|
<el-form :inline="true" :model="formInline" class="demo-form-inline">
|
||||||
|
<el-form-item label="用户昵称/手机号">
|
||||||
|
<el-input v-model="formInline.keywords" placeholder="请输入用户昵称/手机号" clearable />
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item>
|
||||||
|
<el-button type="primary" icon="Search" @click="onSubmit">搜索</el-button>
|
||||||
|
<el-button icon="Refresh" @click="reset">重置</el-button>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
<el-table :data="rechargeDataAA.list">
|
||||||
|
<el-table-column prop="userId" label="ID"></el-table-column>
|
||||||
|
<el-table-column label="头像" width="200">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<img :src="scope.row.avatar" alt="头像" style="width: 50px; height: 50px; border-radius: 50%;" />
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="userName" label="用户昵称"></el-table-column>
|
||||||
|
<el-table-column prop="phone" label="手机号"></el-table-column>
|
||||||
|
<el-table-column prop="signInNum" label="总签到人数"></el-table-column>
|
||||||
|
<el-table-column prop="awardAmount" label="已发放奖励总金额"></el-table-column>
|
||||||
|
<el-table-column label="操作" width="300">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<el-button type="text" @click="viewUserDetails(scope.row)">查看用户详情</el-button>
|
||||||
|
<el-button type="text" @click="rewardDetails(scope.row)">奖励详情</el-button>
|
||||||
|
<el-button type="text" @click="signInDetails(scope.row)">签到详情</el-button>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<div style="text-align: center;margin-top: 10px;">
|
||||||
|
<el-pagination @size-change="handleSizeChange4" @current-change="handleCurrentChange4"
|
||||||
|
:page-sizes="[10, 20, 30, 40]" :page-size="rechargeDataAA.limit" :current-page="rechargeDataAA.page"
|
||||||
|
layout="total,sizes, prev, pager, next,jumper" :total="rechargeDataAA.totalCount">
|
||||||
|
</el-pagination>
|
||||||
|
</div>
|
||||||
|
<!-- 奖励详情 -->
|
||||||
|
<el-dialog title="奖励详情" :visible.sync="dialogVisible" width="50%">
|
||||||
|
<div>奖励发放金额合计:{{ rechargeDataBB.totalCount }} </div>
|
||||||
|
<el-table :data="rechargeDataBB.list">
|
||||||
|
<el-table-column prop="userId" label="ID"></el-table-column>
|
||||||
|
<el-table-column prop="amount" label="发放金额"></el-table-column>
|
||||||
|
<el-table-column prop="userPhone" label="有效邀请人"></el-table-column>
|
||||||
|
<el-table-column prop="createTime" label="发放时间"></el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<div style="text-align: center;margin-top: 10px;">
|
||||||
|
<el-pagination @size-change="handleSizeChange4BB" @current-change="handleCurrentChange4BB"
|
||||||
|
:page-sizes="[10, 20, 30, 40]" :page-size="rechargeDataCC.limit" :current-page="rechargeDataCC.page"
|
||||||
|
layout="total,sizes, prev, pager, next,jumper" :total="rechargeDataCC.totalCount">
|
||||||
|
</el-pagination>
|
||||||
|
</div>
|
||||||
|
</el-dialog>
|
||||||
|
<!-- 签到详情 -->
|
||||||
|
<el-dialog title="签到详情" :visible.sync="dialogVisibles" width="50%">
|
||||||
|
<div><span>签到人数合计:{{ rechargeDataCC.totalCount }}</span> <span>实名人数合计:{{
|
||||||
|
rechargeDataCC.totalCount }}</span> </div>
|
||||||
|
<el-table :data="rechargeDataCC.list">
|
||||||
|
<el-table-column prop="userId" label="ID"></el-table-column>
|
||||||
|
<el-table-column prop="userName" label="签到账号"></el-table-column>
|
||||||
|
<el-table-column prop="phone" label="签到手机号"></el-table-column>
|
||||||
|
<el-table-column prop="userName" label="实名信息">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<div>姓名:{{ scope.row.realName }}</div>
|
||||||
|
<div>身份证号:{{ scope.row.idCardNo }}</div>
|
||||||
|
<div>银行卡号:{{ scope.row.bankCardNo }}</div>
|
||||||
|
<div>开户行:{{ scope.row.bankBranch }}</div>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="createTime" label="签到时间"></el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<div style="text-align: center;margin-top: 10px;">
|
||||||
|
<el-pagination @size-change="handleSizeChange4CC" @current-change="handleCurrentChange4CC"
|
||||||
|
:page-sizes="[10, 20, 30, 40]" :page-size="rechargeDataCC.limit" :current-page="rechargeDataCC.page"
|
||||||
|
layout="total,sizes, prev, pager, next,jumper" :total="rechargeDataCC.totalCount">
|
||||||
|
</el-pagination>
|
||||||
|
</div>
|
||||||
|
</el-dialog>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
rewardDetailsList: [], // 奖励详情列表
|
||||||
|
rewardtotalPage: 0, // 奖励详情总页数
|
||||||
|
signInDetailsList: [], // 签到详情列表
|
||||||
|
signInDetailsTotalPage: 0, // 签到详情总页数
|
||||||
|
formInline: {
|
||||||
|
keywords: ''
|
||||||
|
},
|
||||||
|
page: 1,
|
||||||
|
limit: 10,
|
||||||
|
rechargeDataAA: {
|
||||||
|
totalCount: 0,
|
||||||
|
list: [],
|
||||||
|
page: 1,
|
||||||
|
limit: 10,
|
||||||
|
},
|
||||||
|
rechargeDataBB: {
|
||||||
|
totalCount: 0,
|
||||||
|
list: [],
|
||||||
|
page: 1,
|
||||||
|
limit: 10,
|
||||||
|
},
|
||||||
|
rechargeDataCC: {
|
||||||
|
totalCount: 0,
|
||||||
|
list: [],
|
||||||
|
page: 1,
|
||||||
|
limit: 10,
|
||||||
|
},
|
||||||
|
dialogVisible: false,// 控制奖励详情弹窗的显示与隐藏
|
||||||
|
dialogVisibles: false // 控制签到详情弹窗的显示与隐藏
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
this.getRechargeData()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
viewUserDetails(item) {
|
||||||
|
this.$router.push({ path: '/userDetail', query: { userId: item.userId, active: 'first' } })
|
||||||
|
},
|
||||||
|
rewardDetails(item) {
|
||||||
|
if (item) {
|
||||||
|
this.rechargeDataBB.itemUserId = item.userId
|
||||||
|
}
|
||||||
|
this.$http.get('/ext/sys/invite/friend/award/detail/page', {
|
||||||
|
params: {
|
||||||
|
page: this.rechargeDataBB.page,
|
||||||
|
limit: this.rechargeDataBB.limit,
|
||||||
|
userId: this.rechargeDataBB.itemUserId
|
||||||
|
}
|
||||||
|
}).then(response => {
|
||||||
|
if (response.data.code === 0) {
|
||||||
|
this.rechargeDataBB.list = response.data.data.list
|
||||||
|
this.rechargeDataBB.totalCount = response.data.data.totalCount
|
||||||
|
this.dialogVisible = true
|
||||||
|
} else {
|
||||||
|
this.$message.error(response.data.message)
|
||||||
|
}
|
||||||
|
}).catch(error => {
|
||||||
|
console.error(error)
|
||||||
|
this.$message.error('获取数据失败')
|
||||||
|
})
|
||||||
|
},
|
||||||
|
signInDetails(item) {
|
||||||
|
if (item) {
|
||||||
|
this.rechargeDataCC.itemUserId = item.userId
|
||||||
|
}
|
||||||
|
this.$http.get('/ext/sys/invite/friend/signIn/page', {
|
||||||
|
params: {
|
||||||
|
page: this.rechargeDataCC.page,
|
||||||
|
limit: this.rechargeDataCC.limit,
|
||||||
|
userId: this.rechargeDataCC.itemUserId
|
||||||
|
}
|
||||||
|
}).then(response => {
|
||||||
|
if (response.data.code === 0) {
|
||||||
|
this.rechargeDataCC.list = response.data.data.list
|
||||||
|
this.rechargeDataCC.totalCount = response.data.data.totalCount
|
||||||
|
this.dialogVisibles = true
|
||||||
|
} else {
|
||||||
|
this.$message.error(response.data.message)
|
||||||
|
}
|
||||||
|
}).catch(error => {
|
||||||
|
console.error(error)
|
||||||
|
this.$message.error('获取数据失败')
|
||||||
|
})
|
||||||
|
},
|
||||||
|
onSubmit() {
|
||||||
|
this.rechargeDataAA.page = 1
|
||||||
|
this.rechargeDataAA.limit = 10
|
||||||
|
this.getRechargeData()
|
||||||
|
},
|
||||||
|
reset() {
|
||||||
|
this.formInline = {
|
||||||
|
keywords: ''
|
||||||
|
}
|
||||||
|
this.getRechargeData()
|
||||||
|
},
|
||||||
|
getRechargeData() {
|
||||||
|
this.$http.get('/ext/sys/invite/friend/award/page', {
|
||||||
|
params: {
|
||||||
|
page: this.rechargeDataAA.page,
|
||||||
|
limit: this.rechargeDataAA.limit,
|
||||||
|
keywords: this.formInline.keywords
|
||||||
|
}
|
||||||
|
}).then(response => {
|
||||||
|
if (response.data.code === 0) {
|
||||||
|
this.rechargeDataAA.list = response.data.data.list
|
||||||
|
this.rechargeDataAA.totalCount = response.data.data.totalCount
|
||||||
|
} else {
|
||||||
|
this.$message.error(response.data.message)
|
||||||
|
}
|
||||||
|
}).catch(error => {
|
||||||
|
console.error(error)
|
||||||
|
this.$message.error('获取数据失败')
|
||||||
|
})
|
||||||
|
},
|
||||||
|
handleSizeChange4(val) {
|
||||||
|
this.rechargeDataAA.limit = val
|
||||||
|
this.rechargeDataAA.page = 1
|
||||||
|
this.getRechargeData()
|
||||||
|
},
|
||||||
|
handleCurrentChange4(val) {
|
||||||
|
this.rechargeDataAA.page = val
|
||||||
|
this.getRechargeData()
|
||||||
|
},
|
||||||
|
handleSizeChange4BB(val) {
|
||||||
|
this.rechargeDataBB.limit = val
|
||||||
|
this.rechargeDataBB.page = 1
|
||||||
|
this.rewardDetails()
|
||||||
|
},
|
||||||
|
handleCurrentChange4BB(val) {
|
||||||
|
this.rechargeDataBB.page = val
|
||||||
|
this.rewardDetails()
|
||||||
|
},
|
||||||
|
handleSizeChange4CC(val) {
|
||||||
|
this.rechargeDataCC.limit = val
|
||||||
|
this.rechargeDataCC.page = 1
|
||||||
|
this.signInDetails()
|
||||||
|
},
|
||||||
|
handleCurrentChange4CC(val) {
|
||||||
|
this.rechargeDataCC.page = val
|
||||||
|
this.signInDetails()
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
@@ -1850,7 +1850,10 @@
|
|||||||
this.$http({
|
this.$http({
|
||||||
url: this.$http.adornUrl('sys/user/info/' + userId),
|
url: this.$http.adornUrl('sys/user/info/' + userId),
|
||||||
method: 'get',
|
method: 'get',
|
||||||
params: this.$http.adornParams({})
|
params: {
|
||||||
|
...this.$http.adornParams({}),
|
||||||
|
userId: userId
|
||||||
|
}
|
||||||
}).then(({
|
}).then(({
|
||||||
data
|
data
|
||||||
}) => {
|
}) => {
|
||||||
@@ -3078,7 +3081,10 @@
|
|||||||
this.$http({
|
this.$http({
|
||||||
url: this.$http.adornUrl('common/type/152'),
|
url: this.$http.adornUrl('common/type/152'),
|
||||||
method: 'get',
|
method: 'get',
|
||||||
params: this.$http.adornParams({})
|
params: {
|
||||||
|
...this.$http.adornParams({}),
|
||||||
|
type:152
|
||||||
|
}
|
||||||
}).then(({
|
}).then(({
|
||||||
data
|
data
|
||||||
}) => {
|
}) => {
|
||||||
@@ -3090,7 +3096,10 @@
|
|||||||
this.$http({
|
this.$http({
|
||||||
url: this.$http.adornUrl('common/type/153'),
|
url: this.$http.adornUrl('common/type/153'),
|
||||||
method: 'get',
|
method: 'get',
|
||||||
params: this.$http.adornParams({})
|
params: {
|
||||||
|
...this.$http.adornParams({}),
|
||||||
|
type:153
|
||||||
|
}
|
||||||
}).then(({
|
}).then(({
|
||||||
data
|
data
|
||||||
}) => {
|
}) => {
|
||||||
|
|||||||
@@ -493,7 +493,7 @@
|
|||||||
'createTime': this.info.stockDate,
|
'createTime': this.info.stockDate,
|
||||||
'sort': this.sort,
|
'sort': this.sort,
|
||||||
'helpWordTitle': this.helpWordTitle,
|
'helpWordTitle': this.helpWordTitle,
|
||||||
|
|
||||||
})
|
})
|
||||||
}).then(({
|
}).then(({
|
||||||
data
|
data
|
||||||
|
|||||||
@@ -1,17 +1,49 @@
|
|||||||
<template>
|
<template>
|
||||||
<el-dialog :title="title" width="500px" :visible.sync="dialogVisible" @close="diaClose"
|
<el-dialog
|
||||||
:close-on-click-modal="true">
|
:title="title"
|
||||||
<div >
|
width="800px"
|
||||||
|
top="20px"
|
||||||
|
:visible.sync="dialogVisible"
|
||||||
|
@close="diaClose"
|
||||||
|
:close-on-click-modal="true"
|
||||||
|
>
|
||||||
|
<div>
|
||||||
<el-form ref="form" :rules="rules" :model="form" label-width="100px">
|
<el-form ref="form" :rules="rules" :model="form" label-width="100px">
|
||||||
<el-form-item label="标题" prop="title">
|
<el-form-item label="标题" prop="title">
|
||||||
<el-input v-model="form.title"></el-input>
|
<el-input v-model="form.title"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="内容" prop="content">
|
<el-form-item label="类型" prop="title">
|
||||||
<el-input v-model="form.content" type="textarea"></el-input>
|
<el-radio-group v-model="form.type">
|
||||||
|
<el-radio
|
||||||
|
:label="item.value"
|
||||||
|
v-for="(item, index) in types"
|
||||||
|
:key="index"
|
||||||
|
>{{ item.label }}</el-radio
|
||||||
|
>
|
||||||
|
</el-radio-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="状态" required>
|
<el-form-item label="状态" required>
|
||||||
<el-switch v-model="form.state" :active-value="1" :inactive-value="0"></el-switch>
|
<el-switch
|
||||||
|
v-model="form.state"
|
||||||
|
:active-value="1"
|
||||||
|
:inactive-value="0"
|
||||||
|
></el-switch>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
<el-form-item label="内容" prop="content">
|
||||||
|
<quill-editor
|
||||||
|
ref="myTextEditor"
|
||||||
|
v-model="form.content"
|
||||||
|
:options="quillOption"
|
||||||
|
style="
|
||||||
|
padding-bottom: 50px;
|
||||||
|
height: 300px;
|
||||||
|
width: 100%;
|
||||||
|
display: inline-table;
|
||||||
|
"
|
||||||
|
>
|
||||||
|
</quill-editor>
|
||||||
|
</el-form-item>
|
||||||
|
|
||||||
</el-form>
|
</el-form>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -23,21 +55,35 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import {$announcement as $api} from "@/api/announcement.js";
|
import { $announcement as $api } from "@/api/announcement.js";
|
||||||
|
import { $types } from "../data.js";
|
||||||
|
import { quillEditor } from "vue-quill-editor";
|
||||||
|
import "quill/dist/quill.core.css";
|
||||||
|
import "quill/dist/quill.snow.css";
|
||||||
|
import "quill/dist/quill.bubble.css";
|
||||||
|
import quillConfig from "../../locality/quill-config.js";
|
||||||
export default {
|
export default {
|
||||||
|
components: {
|
||||||
|
quillEditor,
|
||||||
|
},
|
||||||
|
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
quillOption: quillConfig,
|
||||||
|
types: $types,
|
||||||
dialogVisible: false,
|
dialogVisible: false,
|
||||||
title: "",
|
title: "",
|
||||||
rules: {
|
rules: {
|
||||||
title: [{ required: true, message: "请输入公告标题", trigger: "blur" }],
|
title: [{ required: true, message: "请输入公告标题", trigger: "blur" }],
|
||||||
content: [{ required: true, message: "请输入公告内容", trigger: "blur" }],
|
content: [
|
||||||
|
{ required: true, message: "请输入公告内容", trigger: "blur" },
|
||||||
|
],
|
||||||
},
|
},
|
||||||
form: {
|
form: {
|
||||||
title:'',
|
title: "",
|
||||||
content:'',
|
content: "",
|
||||||
state:1,
|
state: 1,
|
||||||
|
type: "",
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
@@ -51,9 +97,10 @@ export default {
|
|||||||
diaClose() {
|
diaClose() {
|
||||||
this.dialogVisible = false;
|
this.dialogVisible = false;
|
||||||
this.form = {
|
this.form = {
|
||||||
title:'',
|
title: "",
|
||||||
content:'',
|
content: "",
|
||||||
state:1,
|
state: 1,
|
||||||
|
type: "",
|
||||||
};
|
};
|
||||||
this.$refs.form.resetFields();
|
this.$refs.form.resetFields();
|
||||||
},
|
},
|
||||||
@@ -64,6 +111,9 @@ export default {
|
|||||||
if (!this.form.content) {
|
if (!this.form.content) {
|
||||||
return this.$message.error("请输入公告内容");
|
return this.$message.error("请输入公告内容");
|
||||||
}
|
}
|
||||||
|
if (this.form.type === "") {
|
||||||
|
return this.$message.error("请选择公告类型");
|
||||||
|
}
|
||||||
this.submit();
|
this.submit();
|
||||||
},
|
},
|
||||||
async submit() {
|
async submit() {
|
||||||
@@ -120,4 +170,4 @@ export default {
|
|||||||
object-fit: cover;
|
object-fit: cover;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
4
src/views/message/data.js
Normal file
4
src/views/message/data.js
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
export const $types=[
|
||||||
|
{label:'首页',value:0},
|
||||||
|
{label:'提现',value:1}
|
||||||
|
]
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<el-tabs v-model="activeName" @tab-click="handleClick">
|
<el-tabs v-model="activeName" @tab-click="handleClick">
|
||||||
<el-tab-pane label="首页弹窗公告" name="dialogMessage">
|
<el-tab-pane label="弹窗公告" name="dialogMessage">
|
||||||
<div style="float: right; margin-right: 2%">
|
<div style="float: right; margin-right: 2%">
|
||||||
<el-button
|
<el-button
|
||||||
style="margin: 10px 0"
|
style="margin: 10px 0"
|
||||||
@@ -16,7 +16,16 @@
|
|||||||
<el-table v-loading="tableDataLoading" :data="tableData.list">
|
<el-table v-loading="tableDataLoading" :data="tableData.list">
|
||||||
<el-table-column prop="id" label="编号" width="80"> </el-table-column>
|
<el-table-column prop="id" label="编号" width="80"> </el-table-column>
|
||||||
<el-table-column prop="title" label="标题"> </el-table-column>
|
<el-table-column prop="title" label="标题"> </el-table-column>
|
||||||
<el-table-column prop="content" label="内容"> </el-table-column>
|
<el-table-column prop="title" label="类型">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<div>{{ returnType(scope.row) }}</div>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="content" label="内容" width="480">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<div v-html="scope.row.content"></div>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
<el-table-column prop="content" label="是否启用">
|
<el-table-column prop="content" label="是否启用">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-switch :value="scope.row.state" :active-value="1" :inactive-value="0" @change="dialogMessageUpdate($event, scope.row)"> </el-switch>
|
<el-switch :value="scope.row.state" :active-value="1" :inactive-value="0" @change="dialogMessageUpdate($event, scope.row)"> </el-switch>
|
||||||
@@ -355,10 +364,12 @@
|
|||||||
<script>
|
<script>
|
||||||
import {$announcement} from '@/api/announcement';
|
import {$announcement} from '@/api/announcement';
|
||||||
import popAddMessage from './components/pop-add-message.vue';
|
import popAddMessage from './components/pop-add-message.vue';
|
||||||
|
import {$types} from './data.js';
|
||||||
export default {
|
export default {
|
||||||
components:{popAddMessage},
|
components:{popAddMessage},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
noticeTypes: $types,
|
||||||
limit: 10,
|
limit: 10,
|
||||||
page: 1,
|
page: 1,
|
||||||
state: 1,
|
state: 1,
|
||||||
@@ -413,6 +424,10 @@ import popAddMessage from './components/pop-add-message.vue';
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
returnType(row) {
|
||||||
|
const item=this.noticeTypes.find(item => item.value == row.type)
|
||||||
|
return item.label
|
||||||
|
},
|
||||||
dialogMessageUpdate(e,item){
|
dialogMessageUpdate(e,item){
|
||||||
$announcement.update({...item,state:e}).then(({
|
$announcement.update({...item,state:e}).then(({
|
||||||
data
|
data
|
||||||
@@ -436,7 +451,7 @@ import popAddMessage from './components/pop-add-message.vue';
|
|||||||
type: 'success',
|
type: 'success',
|
||||||
duration: 1500
|
duration: 1500
|
||||||
})
|
})
|
||||||
this.getDialogMessage()
|
this.getDialogMessage()
|
||||||
})
|
})
|
||||||
}).catch(() => {})
|
}).catch(() => {})
|
||||||
},
|
},
|
||||||
@@ -803,4 +818,4 @@ import popAddMessage from './components/pop-add-message.vue';
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -1576,6 +1576,9 @@
|
|||||||
this.$http({
|
this.$http({
|
||||||
url: this.$http.adornUrl('common/type/247'),
|
url: this.$http.adornUrl('common/type/247'),
|
||||||
method: 'get',
|
method: 'get',
|
||||||
|
params: {
|
||||||
|
type:247
|
||||||
|
},
|
||||||
data: this.$http.adornData({})
|
data: this.$http.adornData({})
|
||||||
}).then(({
|
}).then(({
|
||||||
data
|
data
|
||||||
|
|||||||
@@ -34,7 +34,7 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="wxCourseId" label="微信短剧ID"></el-table-column>
|
<el-table-column prop="wxCourseId" label="微信短剧ID"></el-table-column>
|
||||||
|
|
||||||
<el-table-column prop="qualificationType" label="剧目资质" width="160">
|
<el-table-column prop="qualificationType" label="剧目资质" width="160">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span v-if="scope.row.qualificationType == 1 ">取得《网络剧片发行许可证》或重点节目备案号</span>
|
<span v-if="scope.row.qualificationType == 1 ">取得《网络剧片发行许可证》或重点节目备案号</span>
|
||||||
@@ -181,7 +181,7 @@
|
|||||||
:show-file-list="false" :on-success="handleUploadSuccess4" :on-progress="onprogress4" >
|
:show-file-list="false" :on-success="handleUploadSuccess4" :on-progress="onprogress4" >
|
||||||
<el-button type="primary">上传文件</el-button>
|
<el-button type="primary">上传文件</el-button>
|
||||||
</el-upload>
|
</el-upload>
|
||||||
|
|
||||||
<!-- <div class="imgs" v-for="(item,index) in cost_commitment_letter_material_id" :key="index">
|
<!-- <div class="imgs" v-for="(item,index) in cost_commitment_letter_material_id" :key="index">
|
||||||
<img width="100%" class="images" height="100%" :src="item" alt="">
|
<img width="100%" class="images" height="100%" :src="item" alt="">
|
||||||
<span class="dels">
|
<span class="dels">
|
||||||
@@ -197,7 +197,7 @@
|
|||||||
</el-upload>
|
</el-upload>
|
||||||
</div> -->
|
</div> -->
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div style="display: block;margin-left: 200px;margin-bottom: 20px;" v-if="qualification_type==2">
|
<div style="display: block;margin-left: 200px;margin-bottom: 20px;" v-if="qualification_type==2">
|
||||||
<div>
|
<div>
|
||||||
@@ -355,7 +355,7 @@
|
|||||||
<el-dialog title="同步短剧" :visible.sync="dialogFormVisibleTbdj" center v-loading="loading"
|
<el-dialog title="同步短剧" :visible.sync="dialogFormVisibleTbdj" center v-loading="loading"
|
||||||
element-loading-text="正在读取中" element-loading-spinner="el-icon-loading"
|
element-loading-text="正在读取中" element-loading-spinner="el-icon-loading"
|
||||||
element-loading-background="rgba(0, 0, 0, 0.8)">
|
element-loading-background="rgba(0, 0, 0, 0.8)">
|
||||||
|
|
||||||
<!-- <div style="margin-bottom: 10px;">
|
<!-- <div style="margin-bottom: 10px;">
|
||||||
<span style="width: 200px;display: inline-block;text-align: right;">读取oss路径:</span>
|
<span style="width: 200px;display: inline-block;text-align: right;">读取oss路径:</span>
|
||||||
<el-input v-model="filePath" type="text" style="width:50%;" placeholder="请输入读取oss路径"></el-input>
|
<el-input v-model="filePath" type="text" style="width:50%;" placeholder="请输入读取oss路径"></el-input>
|
||||||
@@ -376,12 +376,12 @@
|
|||||||
<span style="width: 200px;display: inline-block;text-align: right;">最小点赞数量:</span>
|
<span style="width: 200px;display: inline-block;text-align: right;">最小点赞数量:</span>
|
||||||
<el-input v-model="minGood" type="number" style="width:50%;" placeholder="请输入最小点赞数量"></el-input>
|
<el-input v-model="minGood" type="number" style="width:50%;" placeholder="请输入最小点赞数量"></el-input>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div slot="footer" class="dialog-footer" style="text-align: center;">
|
<div slot="footer" class="dialog-footer" style="text-align: center;">
|
||||||
<el-button @click="dialogFormVisibleTbdj = false">取 消</el-button>
|
<el-button @click="dialogFormVisibleTbdj = false">取 消</el-button>
|
||||||
<el-button type="primary" @click="querentongbu()">确 定</el-button>
|
<el-button type="primary" @click="querentongbu()">确 定</el-button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
</el-tabs>
|
</el-tabs>
|
||||||
@@ -576,8 +576,8 @@
|
|||||||
percentage2: 0,
|
percentage2: 0,
|
||||||
media:'',
|
media:'',
|
||||||
access_token:'',
|
access_token:'',
|
||||||
|
|
||||||
|
|
||||||
dialogFormVisibleTbdj: false,
|
dialogFormVisibleTbdj: false,
|
||||||
filePath: '',
|
filePath: '',
|
||||||
freeNum: '',
|
freeNum: '',
|
||||||
@@ -717,8 +717,8 @@
|
|||||||
}else{
|
}else{
|
||||||
this.cost_commitment_letter_material_id = ''
|
this.cost_commitment_letter_material_id = ''
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
this.tokenSelect()
|
this.tokenSelect()
|
||||||
this.dialogFormVisible1 = true
|
this.dialogFormVisible1 = true
|
||||||
},
|
},
|
||||||
@@ -774,7 +774,7 @@
|
|||||||
})
|
})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.qualification_certificate_material_id == '') {
|
if (this.qualification_certificate_material_id == '') {
|
||||||
this.$notify({
|
this.$notify({
|
||||||
title: '提示',
|
title: '提示',
|
||||||
@@ -806,7 +806,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
this.$http({
|
this.$http({
|
||||||
url: this.$http.adornUrl('course/uploadWxCourse'),
|
url: this.$http.adornUrl('course/uploadWxCourse'),
|
||||||
@@ -1453,6 +1453,9 @@
|
|||||||
this.$http({
|
this.$http({
|
||||||
url: this.$http.adornUrl('common/type/247'),
|
url: this.$http.adornUrl('common/type/247'),
|
||||||
method: 'get',
|
method: 'get',
|
||||||
|
params: {
|
||||||
|
type:247
|
||||||
|
},
|
||||||
data: this.$http.adornData({})
|
data: this.$http.adornData({})
|
||||||
}).then(({
|
}).then(({
|
||||||
data
|
data
|
||||||
@@ -1997,10 +2000,10 @@
|
|||||||
this.maxGood = ''
|
this.maxGood = ''
|
||||||
this.minGood = ''
|
this.minGood = ''
|
||||||
this.dialogFormVisibleTbdj = true
|
this.dialogFormVisibleTbdj = true
|
||||||
|
|
||||||
},
|
},
|
||||||
// querentongbu() {
|
// querentongbu() {
|
||||||
|
|
||||||
// // if (this.filePath === '') {
|
// // if (this.filePath === '') {
|
||||||
// // this.$notify({
|
// // this.$notify({
|
||||||
// // title: '提示',
|
// // title: '提示',
|
||||||
@@ -2070,7 +2073,7 @@
|
|||||||
// }).then(({
|
// }).then(({
|
||||||
// data
|
// data
|
||||||
// }) => {
|
// }) => {
|
||||||
|
|
||||||
// if (data.code == 0) {
|
// if (data.code == 0) {
|
||||||
// this.$message({
|
// this.$message({
|
||||||
// message: '操作成功',
|
// message: '操作成功',
|
||||||
@@ -2089,18 +2092,18 @@
|
|||||||
// type: 'warning',
|
// type: 'warning',
|
||||||
// duration: 3000,
|
// duration: 3000,
|
||||||
// onClose: () => {
|
// onClose: () => {
|
||||||
|
|
||||||
// }
|
// }
|
||||||
// })
|
// })
|
||||||
|
|
||||||
// }
|
// }
|
||||||
|
|
||||||
// })
|
// })
|
||||||
// },
|
// },
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// 同步短剧
|
// 同步短剧
|
||||||
querentongbu() {
|
querentongbu() {
|
||||||
// this.$confirm(`确定同步短剧?`, '提示', {
|
// this.$confirm(`确定同步短剧?`, '提示', {
|
||||||
@@ -2244,10 +2247,10 @@
|
|||||||
handleUploadSuccess4(file) {
|
handleUploadSuccess4(file) {
|
||||||
this.cost_commitment_letter_material_id = file.media_id
|
this.cost_commitment_letter_material_id = file.media_id
|
||||||
console.log('------',file)
|
console.log('------',file)
|
||||||
// this.media = fileList
|
// this.media = fileList
|
||||||
|
|
||||||
// this.cost_commitment_letter_material_id = file.data
|
// this.cost_commitment_letter_material_id = file.data
|
||||||
|
|
||||||
},
|
},
|
||||||
onprogress4(event, file, fileList) {
|
onprogress4(event, file, fileList) {
|
||||||
// console.log('event, file, fileList', parseInt(event.percent),event, file, fileList)
|
// console.log('event, file, fileList', parseInt(event.percent),event, file, fileList)
|
||||||
@@ -2271,7 +2274,7 @@
|
|||||||
if (data.code == 0) {
|
if (data.code == 0) {
|
||||||
// media:'',
|
// media:'',
|
||||||
this.access_token = data.data
|
this.access_token = data.data
|
||||||
// this.cost_commitment_letter_material_id =
|
// this.cost_commitment_letter_material_id =
|
||||||
} else {
|
} else {
|
||||||
this.$message({
|
this.$message({
|
||||||
message: data.msg,
|
message: data.msg,
|
||||||
@@ -2281,7 +2284,7 @@
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
mediaSelect(){
|
mediaSelect(){
|
||||||
@@ -2301,7 +2304,7 @@
|
|||||||
if (data.code == 0) {
|
if (data.code == 0) {
|
||||||
// media:'',
|
// media:'',
|
||||||
// access_token:'',
|
// access_token:'',
|
||||||
// this.cost_commitment_letter_material_id =
|
// this.cost_commitment_letter_material_id =
|
||||||
} else {
|
} else {
|
||||||
this.$message({
|
this.$message({
|
||||||
message: data.msg,
|
message: data.msg,
|
||||||
@@ -2311,7 +2314,7 @@
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -2320,7 +2323,7 @@
|
|||||||
this.classifySelect1()
|
this.classifySelect1()
|
||||||
this.dataSelect()
|
this.dataSelect()
|
||||||
this.xianshi()
|
this.xianshi()
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1158,7 +1158,8 @@
|
|||||||
'page': this.page,
|
'page': this.page,
|
||||||
'limit': this.limit,
|
'limit': this.limit,
|
||||||
'member': this.member,
|
'member': this.member,
|
||||||
'phone': this.phone
|
'phone': this.phone,
|
||||||
|
type:88
|
||||||
})
|
})
|
||||||
}).then(({
|
}).then(({
|
||||||
data
|
data
|
||||||
|
|||||||
@@ -148,7 +148,9 @@
|
|||||||
this.$http({
|
this.$http({
|
||||||
url: this.$http.adornUrl(`/sys/menu/info/${this.dataForm.id}`),
|
url: this.$http.adornUrl(`/sys/menu/info/${this.dataForm.id}`),
|
||||||
method: 'get',
|
method: 'get',
|
||||||
params: this.$http.adornParams()
|
params: this.$http.adornParams({
|
||||||
|
menuId: this.dataForm.id
|
||||||
|
})
|
||||||
}).then(({data}) => {
|
}).then(({data}) => {
|
||||||
this.dataForm.id = data.menu.menuId
|
this.dataForm.id = data.menu.menuId
|
||||||
this.dataForm.type = data.menu.type
|
this.dataForm.type = data.menu.type
|
||||||
|
|||||||
@@ -130,7 +130,9 @@
|
|||||||
this.$http({
|
this.$http({
|
||||||
url: this.$http.adornUrl(`/sys/menu/delete/${id}`),
|
url: this.$http.adornUrl(`/sys/menu/delete/${id}`),
|
||||||
method: 'post',
|
method: 'post',
|
||||||
data: this.$http.adornData()
|
data: this.$http.adornData({
|
||||||
|
menuId: id
|
||||||
|
})
|
||||||
}).then(({data}) => {
|
}).then(({data}) => {
|
||||||
if (data && data.code === 0) {
|
if (data && data.code === 0) {
|
||||||
this.$message({
|
this.$message({
|
||||||
|
|||||||
@@ -72,12 +72,15 @@
|
|||||||
this.$http({
|
this.$http({
|
||||||
url: this.$http.adornUrl(`/sys/role/info/${this.dataForm.id}`),
|
url: this.$http.adornUrl(`/sys/role/info/${this.dataForm.id}`),
|
||||||
method: 'get',
|
method: 'get',
|
||||||
params: this.$http.adornParams()
|
params: this.$http.adornParams({
|
||||||
|
roleId:this.dataForm.id
|
||||||
|
})
|
||||||
}).then(({data}) => {
|
}).then(({data}) => {
|
||||||
if (data && data.code === 0) {
|
if (data && data.code === 0) {
|
||||||
this.dataForm.roleName = data.role.roleName
|
this.dataForm.roleName = data.role.roleName
|
||||||
this.dataForm.remark = data.role.remark
|
this.dataForm.remark = data.role.remark
|
||||||
var idx = data.role.menuIdList.indexOf(this.tempKey)
|
var idx = data.role.menuIdList.indexOf(this.tempKey)
|
||||||
|
console.log(idx);
|
||||||
if (idx !== -1) {
|
if (idx !== -1) {
|
||||||
data.role.menuIdList.splice(idx, data.role.menuIdList.length - idx)
|
data.role.menuIdList.splice(idx, data.role.menuIdList.length - idx)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -126,7 +126,10 @@
|
|||||||
this.$http({
|
this.$http({
|
||||||
url: this.$http.adornUrl(`/sys/user/info/${this.dataForm.id}`),
|
url: this.$http.adornUrl(`/sys/user/info/${this.dataForm.id}`),
|
||||||
method: 'get',
|
method: 'get',
|
||||||
params: this.$http.adornParams()
|
params: {
|
||||||
|
...this.$http.adornParams(),
|
||||||
|
'userId': this.dataForm.id
|
||||||
|
}
|
||||||
}).then(({data}) => {
|
}).then(({data}) => {
|
||||||
if (data && data.code === 0) {
|
if (data && data.code === 0) {
|
||||||
this.dataForm.userName = data.user.username
|
this.dataForm.userName = data.user.username
|
||||||
@@ -141,7 +144,7 @@
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 表单提交
|
// 表单提交
|
||||||
dataFormSubmit () {
|
dataFormSubmit () {
|
||||||
this.$refs['dataForm'].validate((valid) => {
|
this.$refs['dataForm'].validate((valid) => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
if(this.dataForm.roleIdList.length<1){
|
if(this.dataForm.roleIdList.length<1){
|
||||||
|
|||||||
@@ -190,7 +190,10 @@
|
|||||||
this.$http({
|
this.$http({
|
||||||
url: this.$http.adornUrl(`sys/user/info/${this.dataForm.id}`),
|
url: this.$http.adornUrl(`sys/user/info/${this.dataForm.id}`),
|
||||||
method: 'get',
|
method: 'get',
|
||||||
params: this.$http.adornParams()
|
params: {
|
||||||
|
...this.$http.adornParams(),
|
||||||
|
'userId': this.dataForm.id
|
||||||
|
}
|
||||||
}).then(({
|
}).then(({
|
||||||
data
|
data
|
||||||
}) => {
|
}) => {
|
||||||
|
|||||||
@@ -193,7 +193,10 @@
|
|||||||
this.$http({
|
this.$http({
|
||||||
url: this.$http.adornUrl(`sys/user/info/${this.dataForm.id}`),
|
url: this.$http.adornUrl(`sys/user/info/${this.dataForm.id}`),
|
||||||
method: 'get',
|
method: 'get',
|
||||||
params: this.$http.adornParams()
|
params: {
|
||||||
|
...this.$http.adornParams(),
|
||||||
|
'userId': this.dataForm.id
|
||||||
|
}
|
||||||
}).then(({
|
}).then(({
|
||||||
data
|
data
|
||||||
}) => {
|
}) => {
|
||||||
@@ -233,7 +236,7 @@
|
|||||||
this.dataForm.qdRate = qdRate
|
this.dataForm.qdRate = qdRate
|
||||||
this.dataForm.sysUserId = sysUserId
|
this.dataForm.sysUserId = sysUserId
|
||||||
this.dataForm.qdCode = qdCode
|
this.dataForm.qdCode = qdCode
|
||||||
|
|
||||||
|
|
||||||
this.dataForm.money = 0
|
this.dataForm.money = 0
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,370 +1,388 @@
|
|||||||
<template>
|
<template>
|
||||||
<el-tabs v-model = "activeName" @tab-click = "handleClick">
|
<el-tabs v-model="activeName" @tab-click="handleClick">
|
||||||
<el-tab-pane label = "订单列表" name = "first">
|
<el-tab-pane label="订单列表" name="first">
|
||||||
<div style = "margin-right:2%;">
|
<div style="margin-right:2%;">
|
||||||
<span>状态:</span>
|
<span>状态:</span>
|
||||||
<el-select v-model="status" style="width:150px;margin-left: 10px;" @change="animeDat(status)">
|
<el-select v-model="status" style="width:150px;margin-left: 10px;" @change="animeDat(status)">
|
||||||
<el-option v-for="item in statesnum" :key="item.value" :label="item.label" :value="item.value">
|
<el-option v-for="item in statesnum" :key="item.value" :label="item.label" :value="item.value">
|
||||||
</el-option>
|
</el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
<div style="position: relative;display: inline-block;">
|
<div style="position: relative;display: inline-block;">
|
||||||
<span>订单编号:</span>
|
<span>订单编号:</span>
|
||||||
<el-input style="width: 200px;" @keydown.enter.native="select" placeholder="请输入订单编号"
|
<el-input style="width: 200px;" @keydown.enter.native="select" placeholder="请输入订单编号"
|
||||||
v-model="ordersNo"></el-input>
|
v-model="ordersNo"></el-input>
|
||||||
</div>
|
</div>
|
||||||
<span>订单类型:</span>
|
<span>订单类型:</span>
|
||||||
<el-select v-model="ordersType" style="width:150px;margin-left: 10px;" @change="animeDat()">
|
<el-select v-model="ordersType" style="width:150px;margin-left: 10px;" @change="animeDat()">
|
||||||
<el-option v-for="item in ordersTypenum" :key="item.value" :label="item.label" :value="item.value">
|
<el-option v-for="item in ordersTypenum" :key="item.value" :label="item.label" :value="item.value">
|
||||||
</el-option>
|
</el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
<div style="position: relative;display: inline-block;">
|
<div style="position: relative;display: inline-block;">
|
||||||
<span>购买用户昵称:</span>
|
<span>购买用户昵称:</span>
|
||||||
<el-input style="width: 200px;" @keydown.enter.native="select" placeholder="请输入购买用户昵称"
|
<el-input style="width: 200px;" @keydown.enter.native="select" placeholder="请输入购买用户昵称"
|
||||||
v-model="userName"></el-input>
|
v-model="userName"></el-input>
|
||||||
</div>
|
</div>
|
||||||
<div style="position: relative;display: inline-block;">
|
<div style="position: relative;display: inline-block;">
|
||||||
<span>渠道码:</span>
|
<span>渠道码:</span>
|
||||||
<el-input style="width: 200px;" @keydown.enter.native="select" placeholder="请输入渠道码"
|
<el-input style="width: 200px;" @keydown.enter.native="select" placeholder="请输入渠道码"
|
||||||
v-model="qdCode"></el-input>
|
v-model="qdCode"></el-input>
|
||||||
</div>
|
</div>
|
||||||
<div style="position: relative;display: inline-block;">
|
<div style="position: relative;display: inline-block;">
|
||||||
<span>渠道商名称:</span>
|
<span>渠道商名称:</span>
|
||||||
<el-input style="width: 200px;" @keydown.enter.native="select" placeholder="请输入渠道商名称"
|
<el-input style="width: 200px;" @keydown.enter.native="select" placeholder="请输入渠道商名称"
|
||||||
v-model="sysUserName"></el-input>
|
v-model="sysUserName"></el-input>
|
||||||
</div>
|
</div>
|
||||||
<div style="margin:5px;display: inline-block;">
|
<div style="margin:5px;display: inline-block;">
|
||||||
<span>开始时间:</span>
|
<span>开始时间:</span>
|
||||||
<el-date-picker style="width: 160px;margin-left: 10px;" v-model="startTime" align="right"
|
<el-date-picker style="width: 160px;margin-left: 10px;" v-model="startTime" align="right"
|
||||||
type="date" format="yyyy-MM-dd" value-format="yyyy-MM-dd" placeholder="选择开始时间">
|
type="date" format="yyyy-MM-dd" value-format="yyyy-MM-dd" placeholder="选择开始时间">
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
</div>
|
</div>
|
||||||
<div style="margin:5px;display: inline-block;">
|
<div style="margin:5px;display: inline-block;">
|
||||||
<span>截止时间:</span>
|
<span>截止时间:</span>
|
||||||
<el-date-picker style="width: 160px;margin-left: 10px;" v-model="endTime" align="right" type="date"
|
<el-date-picker style="width: 160px;margin-left: 10px;" v-model="endTime" align="right" type="date"
|
||||||
format="yyyy-MM-dd" value-format="yyyy-MM-dd" placeholder="选择截止时间">
|
format="yyyy-MM-dd" value-format="yyyy-MM-dd" placeholder="选择截止时间">
|
||||||
</el-date-picker>
|
</el-date-picker>
|
||||||
</div>
|
</div>
|
||||||
<el-button style="margin-left:15px;" size="mini" type="primary" icon="document" @click="select">查询
|
<el-button style="margin-left:15px;" size="mini" type="primary" icon="document" @click="select">查询
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button style="margin-left:15px;" size="mini" type="primary" icon="document" @click="cleans">重置
|
<el-button style="margin-left:15px;" size="mini" type="primary" icon="document" @click="cleans">重置
|
||||||
</el-button>
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
<el-table v-loading = "tableDataLoading" :data = "tableData.list" >
|
<el-table v-loading="tableDataLoading" :data="tableData.list">
|
||||||
<el-table-column fixed prop = "ordersId" label = "编号" width = "80"></el-table-column>
|
<el-table-column fixed prop="ordersId" label="编号" width="80"></el-table-column>
|
||||||
<el-table-column prop = "ordersNo" label = "订单编号" width = "180"></el-table-column>
|
<el-table-column prop="ordersNo" label="订单编号" width="180"></el-table-column>
|
||||||
<el-table-column prop = "userName" label = "购买用户昵称" width = "120" align="center">
|
<el-table-column prop="userName" label="购买用户昵称" width="120" align="center">
|
||||||
<template slot-scope = "scope">
|
<template slot-scope="scope">
|
||||||
<span style = "color: #4f9dec;cursor: pointer;" @click = "updates(scope.row)">
|
<span style="color: #4f9dec;cursor: pointer;" @click="updates(scope.row)">
|
||||||
{{ scope.row.userName}}
|
{{ scope.row.userName }}
|
||||||
</span>
|
</span>
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column prop = "title" label = "购买短剧/会员等级" width = "180" align="center">
|
|
||||||
<template slot-scope = "scope">
|
|
||||||
<span v-if = "scope.row.ordersType == 1">{{scope.row.title}}</span>
|
|
||||||
<span v-if = "scope.row.ordersType == 2 && scope.row.vipNameType==0">月卡</span>
|
|
||||||
<span v-if = "scope.row.ordersType == 2 && scope.row.vipNameType==1">季卡</span>
|
|
||||||
<span v-if = "scope.row.ordersType == 2 && scope.row.vipNameType==2">年卡</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column prop = "qdCode" label = "渠道码"></el-table-column>
|
|
||||||
<el-table-column prop = "sysUserName" label = "渠道商名称" width = "180">
|
|
||||||
<template slot-scope = "scope">
|
|
||||||
<span style = "color: #4f9dec;">{{ scope.row.sysUserName}}</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
|
|
||||||
<el-table-column prop = "payWay" label = "订单类型" width = "120">
|
|
||||||
<template slot-scope = "scope">
|
|
||||||
<span v-if = "scope.row.ordersType == 1">短剧</span>
|
|
||||||
<span v-if = "scope.row.ordersType == 2">会员</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column prop = "payWay" label = "支付方式" width = "120">
|
|
||||||
<template slot-scope = "scope">
|
|
||||||
<span v-if = "scope.row.payWay == null">暂无</span>
|
|
||||||
<span v-if = "scope.row.payWay == 1">微信APP</span>
|
|
||||||
<span v-if = "scope.row.payWay == 2">微信公众号</span>
|
|
||||||
<span v-if = "scope.row.payWay == 3">微信小程序</span>
|
|
||||||
<span v-if = "scope.row.payWay == 4">支付宝</span>
|
|
||||||
<span v-if = "scope.row.payWay == 5">会员免费</span>
|
|
||||||
<span v-if = "scope.row.payWay == 6">金币</span>
|
|
||||||
<span v-if = "scope.row.payWay == 7">抖音</span>
|
|
||||||
<span v-if = "scope.row.payWay == 8">快手</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column prop="payDiamond" label="钻石价格" width="100">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column prop="diamond" label="是否是钻石支付" width="100">
|
|
||||||
<template slot-scope="scope">
|
|
||||||
<span v-if="scope.row.diamond == 1">是</span>
|
|
||||||
<span v-else>否</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column prop = "payMoney" label = "支付金额" width = "120"></el-table-column>
|
|
||||||
<el-table-column prop = "qdMoney" label = "渠道佣金">
|
|
||||||
<template slot-scope = "scope">
|
|
||||||
<span >{{ scope.row.qdMoney?scope.row.qdMoney:0}}</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column prop = "status" label = "状态" width="80" fixed="right">
|
|
||||||
<template slot-scope = "scope">
|
|
||||||
<span v-if = "scope.row.status == null">待支付</span>
|
|
||||||
<span v-if = "scope.row.status == 0">待支付</span>
|
|
||||||
<span v-if = "scope.row.status == 1">已支付</span>
|
|
||||||
<span v-if = "scope.row.status == 2">已退款</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<!-- <el-table-column prop = "refundContent" label = "退款原因" ></el-table-column> -->
|
|
||||||
<el-table-column prop = "createTime" label = "创建时间" width = "200" ></el-table-column>
|
|
||||||
<el-table-column label = "操作" width = "80" align="center" fixed="right">
|
|
||||||
<template slot-scope = "scope">
|
|
||||||
<el-button style="margin:5px;" size="mini" type="warning" icon="document" :disabled="!isAuth('orderCenter:tuikuan')" @click="tuikuanBtn(scope.row)" v-if="scope.row.status==1&&scope.row.payWay != 5">退款
|
|
||||||
</el-button>
|
|
||||||
<el-button size = "mini" type = "danger" :disabled = "!isAuth('orderCenter:delete')" style="margin:5px;"
|
|
||||||
@click = "deletes(scope.row)">删除</el-button>
|
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
<el-table-column prop="title" label="购买短剧/会员等级" width="180" align="center">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span v-if="scope.row.ordersType == 1">{{ scope.row.title }}</span>
|
||||||
|
<span v-if="scope.row.ordersType == 2 && scope.row.vipNameType == 0">月卡</span>
|
||||||
|
<span v-if="scope.row.ordersType == 2 && scope.row.vipNameType == 1">季卡</span>
|
||||||
|
<span v-if="scope.row.ordersType == 2 && scope.row.vipNameType == 2">年卡</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="qdCode" label="渠道码"></el-table-column>
|
||||||
|
<el-table-column prop="sysUserName" label="渠道商名称" width="180">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span style="color: #4f9dec;">{{ scope.row.sysUserName }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
|
||||||
|
<el-table-column prop="payWay" label="订单类型" width="120">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span v-if="scope.row.ordersType == 1">短剧</span>
|
||||||
|
<span v-if="scope.row.ordersType == 2">会员</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="payWay" label="支付方式" width="120">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span v-if="scope.row.payWay == null">暂无</span>
|
||||||
|
<span v-if="scope.row.payWay == 1">微信APP</span>
|
||||||
|
<span v-if="scope.row.payWay == 2">微信公众号</span>
|
||||||
|
<span v-if="scope.row.payWay == 3">微信小程序</span>
|
||||||
|
<span v-if="scope.row.payWay == 4">支付宝</span>
|
||||||
|
<span v-if="scope.row.payWay == 5">会员免费</span>
|
||||||
|
<span v-if="scope.row.payWay == 6">金币</span>
|
||||||
|
<span v-if="scope.row.payWay == 7">抖音</span>
|
||||||
|
<span v-if="scope.row.payWay == 8">快手</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="payDiamond" label="钻石价格" width="100">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="diamond" label="是否是钻石支付" width="100">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span v-if="scope.row.diamond == 1">是</span>
|
||||||
|
<span v-else>否</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="payMoney" label="支付金额" width="120"></el-table-column>
|
||||||
|
<el-table-column prop="qdMoney" label="渠道佣金">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span>{{ scope.row.qdMoney ? scope.row.qdMoney : 0 }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="status" label="状态" width="80" fixed="right">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span v-if="scope.row.status == null">待支付</span>
|
||||||
|
<span v-if="scope.row.status == 0">待支付</span>
|
||||||
|
<span v-if="scope.row.status == 1">已支付</span>
|
||||||
|
<span v-if="scope.row.status == 2">已退款</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<!-- <el-table-column prop = "refundContent" label = "退款原因" ></el-table-column> -->
|
||||||
|
<el-table-column prop="createTime" label="创建时间" width="200"></el-table-column>
|
||||||
|
<el-table-column label="操作" width="80" align="center" fixed="right">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<el-button style="margin:5px;" size="mini" type="warning" icon="document"
|
||||||
|
:disabled="!isAuth('orderCenter:tuikuan')" @click="tuikuanBtn(scope.row)"
|
||||||
|
v-if="scope.row.status == 1 && scope.row.payWay != 5">退款
|
||||||
|
</el-button>
|
||||||
|
<el-button size="mini" type="danger" :disabled="!isAuth('orderCenter:delete')"
|
||||||
|
style="margin:5px;" @click="deletes(scope.row)">删除</el-button>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
<div style="color: #B94A48;font-size: 20px;margin-top: 10px;display: inline-block;">
|
<div style="color: #B94A48;font-size: 20px;margin-top: 10px;display: inline-block;">
|
||||||
本页累计收入统计:{{totalMoney.toFixed(2)}}元; </div>
|
本页累计收入统计:{{ totalMoney.toFixed(2) }}元; </div>
|
||||||
<div style = "text-align: center;margin-top: 10px;float:right">
|
<div style="text-align: center;margin-top: 10px;float:right">
|
||||||
<el-pagination @size-change = "handleSizeChange" @current-change = "handleCurrentChange" :page-sizes = "[10, 20, 30, 40, 100, 200, 500]"
|
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
|
||||||
:page-size = "limit" :current-page = "page" layout = "total,sizes, prev, pager, next,jumper"
|
:page-sizes="[10, 20, 30, 40, 100, 200, 500]" :page-size="limit" :current-page="page"
|
||||||
:total = "tableData.totalCount">
|
layout="total,sizes, prev, pager, next,jumper" :total="tableData.totalCount">
|
||||||
</el-pagination>
|
</el-pagination>
|
||||||
</div>
|
</div>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
</el-tabs>
|
</el-tabs>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
export default {
|
|
||||||
data () {
|
export default {
|
||||||
return {
|
data() {
|
||||||
page: 1,
|
return {
|
||||||
limit: 10,
|
page: 1,
|
||||||
classify: 1,
|
limit: 10,
|
||||||
ordersNo: '',
|
classify: 1,
|
||||||
imageUrl: '',
|
ordersNo: '',
|
||||||
url: '',
|
imageUrl: '',
|
||||||
status: '',
|
url: '',
|
||||||
activeName: 'first',
|
status: '',
|
||||||
tableDataLoading: true,
|
activeName: 'first',
|
||||||
tableData: [],
|
tableDataLoading: true,
|
||||||
checkBoxData: [],//多选框选择的值
|
tableData: [],
|
||||||
statesnum:[
|
checkBoxData: [],//多选框选择的值
|
||||||
{
|
statesnum: [
|
||||||
label: '全部',
|
{
|
||||||
value: ''
|
label: '全部',
|
||||||
},
|
value: ''
|
||||||
{
|
},
|
||||||
label: '待支付',
|
{
|
||||||
value: 0
|
label: '待支付',
|
||||||
},
|
value: 0
|
||||||
{
|
},
|
||||||
label: '已支付',
|
{
|
||||||
value: 1
|
label: '已支付',
|
||||||
},
|
value: 1
|
||||||
{
|
},
|
||||||
label: '已退款',
|
{
|
||||||
value: 2
|
label: '已退款',
|
||||||
},
|
value: 2
|
||||||
],
|
},
|
||||||
totalMoney: 0,
|
],
|
||||||
ordersTypenum: [{
|
totalMoney: 0,
|
||||||
label: '全部',
|
ordersTypenum: [{
|
||||||
value: ''
|
label: '全部',
|
||||||
},
|
value: ''
|
||||||
{
|
},
|
||||||
label: '短剧',
|
{
|
||||||
value: 1
|
label: '短剧',
|
||||||
},
|
value: 1
|
||||||
{
|
},
|
||||||
label: '会员',
|
{
|
||||||
value: 2
|
label: '会员',
|
||||||
},
|
value: 2
|
||||||
],
|
},
|
||||||
ordersType: '',
|
],
|
||||||
userName: '',
|
ordersType: '',
|
||||||
startTime: '',
|
userName: '',
|
||||||
endTime: '',
|
startTime: '',
|
||||||
qdCode:'',
|
endTime: '',
|
||||||
sysUserName:'',
|
qdCode: '',
|
||||||
|
sysUserName: '',
|
||||||
}
|
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
// 多选
|
||||||
|
changeFun(val) {
|
||||||
|
this.checkBoxData = val
|
||||||
},
|
},
|
||||||
methods: {
|
//处理默认选中当前日期
|
||||||
// 多选
|
// getNowTime () {
|
||||||
changeFun (val) {
|
// var now = new Date()
|
||||||
this.checkBoxData = val
|
// var year = now.getFullYear() //得到年份
|
||||||
},
|
// var month = now.getMonth() //得到月份
|
||||||
//处理默认选中当前日期
|
// var date = now.getDate() //得到日期
|
||||||
// getNowTime () {
|
// var hh = now.getHours() < 10 ? '0' + now.getHours() : now.getHours()
|
||||||
// var now = new Date()
|
// var mm = now.getMinutes() < 10 ? '0' + now.getMinutes() : now.getMinutes()
|
||||||
// var year = now.getFullYear() //得到年份
|
// var ss = now.getSeconds() < 10 ? '0' + now.getSeconds() : now.getSeconds()
|
||||||
// var month = now.getMonth() //得到月份
|
// month = month + 1
|
||||||
// var date = now.getDate() //得到日期
|
// month = month.toString().padStart(2, '0')
|
||||||
// var hh = now.getHours() < 10 ? '0' + now.getHours() : now.getHours()
|
// date = date.toString().padStart(2, '0')
|
||||||
// var mm = now.getMinutes() < 10 ? '0' + now.getMinutes() : now.getMinutes()
|
// var defaultDate = `${year}-${month}-${date} ${hh}:${mm}:${ss}`
|
||||||
// var ss = now.getSeconds() < 10 ? '0' + now.getSeconds() : now.getSeconds()
|
// return defaultDate
|
||||||
// month = month + 1
|
// this.$set(this.info, 'stockDate', defaultDate)
|
||||||
// month = month.toString().padStart(2, '0')
|
// },
|
||||||
// date = date.toString().padStart(2, '0')
|
// tabs切换
|
||||||
// var defaultDate = `${year}-${month}-${date} ${hh}:${mm}:${ss}`
|
handleClick(tab, event) {
|
||||||
// return defaultDate
|
if (tab._props.label == '订单列表') {
|
||||||
// this.$set(this.info, 'stockDate', defaultDate)
|
|
||||||
// },
|
|
||||||
// tabs切换
|
|
||||||
handleClick (tab, event) {
|
|
||||||
if (tab._props.label == '订单列表') {
|
|
||||||
this.page = 1
|
|
||||||
this.limit = 10
|
|
||||||
this.classify = 1
|
|
||||||
this.dataSelect()
|
|
||||||
}
|
|
||||||
},
|
|
||||||
handleSizeChange (val) {
|
|
||||||
this.limit = val
|
|
||||||
this.dataSelect()
|
|
||||||
},
|
|
||||||
handleCurrentChange (val) {
|
|
||||||
this.page = val
|
|
||||||
this.dataSelect()
|
|
||||||
},
|
|
||||||
// 查询短剧列表
|
|
||||||
select() {
|
|
||||||
this.page = 1
|
this.page = 1
|
||||||
this.limit = 10
|
this.limit = 10
|
||||||
|
this.classify = 1
|
||||||
this.dataSelect()
|
this.dataSelect()
|
||||||
},
|
}
|
||||||
// 重置短剧列表
|
},
|
||||||
cleans() {
|
handleSizeChange(val) {
|
||||||
this.ordersNo = ''
|
this.limit = val
|
||||||
this.status = ''
|
this.dataSelect()
|
||||||
this.page = 1
|
},
|
||||||
this.ordersType = ''
|
handleCurrentChange(val) {
|
||||||
this.userName = ''
|
this.page = val
|
||||||
this.startTime = ''
|
this.dataSelect()
|
||||||
this.endTime = ''
|
},
|
||||||
this.qdCode = ''
|
// 查询短剧列表
|
||||||
this.sysUserName = ''
|
select() {
|
||||||
|
this.page = 1
|
||||||
this.dataSelect()
|
this.limit = 10
|
||||||
},
|
this.dataSelect()
|
||||||
// select选择事件
|
},
|
||||||
animeDat(state) {
|
// 重置短剧列表
|
||||||
this.page = 1
|
cleans() {
|
||||||
this.status = state
|
this.ordersNo = ''
|
||||||
console.log(state)
|
this.status = ''
|
||||||
this.dataSelect()
|
this.page = 1
|
||||||
},
|
this.ordersType = ''
|
||||||
// 删除banner图
|
this.userName = ''
|
||||||
deletes (row) {
|
this.startTime = ''
|
||||||
let delid = row.ordersId
|
this.endTime = ''
|
||||||
this.$confirm(`确定删除此条信息?`, '提示', {
|
this.qdCode = ''
|
||||||
confirmButtonText: '确定',
|
this.sysUserName = ''
|
||||||
cancelButtonText: '取消',
|
|
||||||
type: 'warning'
|
this.dataSelect()
|
||||||
}).then(() => {
|
},
|
||||||
this.$http({
|
// select选择事件
|
||||||
url: this.$http.adornUrl(`order/deleteOrders?ids=${delid}`),
|
animeDat(state) {
|
||||||
method: 'get',
|
this.page = 1
|
||||||
data: this.$http.adornData({})
|
this.status = state
|
||||||
}).then(({data}) => {
|
console.log(state)
|
||||||
|
this.dataSelect()
|
||||||
|
},
|
||||||
|
// 删除banner图
|
||||||
|
deletes(row) {
|
||||||
|
let delid = row.ordersId
|
||||||
|
this.$confirm(`确定删除此条信息?`, '提示', {
|
||||||
|
confirmButtonText: '确定',
|
||||||
|
cancelButtonText: '取消',
|
||||||
|
type: 'warning'
|
||||||
|
}).then(() => {
|
||||||
|
this.$http({
|
||||||
|
url: this.$http.adornUrl(`order/deleteOrders?ids=${delid}`),
|
||||||
|
method: 'get',
|
||||||
|
data: this.$http.adornData({})
|
||||||
|
}).then(({ data }) => {
|
||||||
|
this.$message({
|
||||||
|
message: '删除成功',
|
||||||
|
type: 'success',
|
||||||
|
duration: 1500,
|
||||||
|
onClose: () => {
|
||||||
|
this.dataSelect()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}).catch(() => {
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 获取数据列表
|
||||||
|
dataSelect() {
|
||||||
|
this.tableDataLoading = true
|
||||||
|
this.totalMoney = 0
|
||||||
|
this.$http({
|
||||||
|
url: this.$http.adornUrl('order/selectOrders'),
|
||||||
|
method: 'get',
|
||||||
|
params: this.$http.adornParams({
|
||||||
|
'page': this.page,
|
||||||
|
'limit': this.limit,
|
||||||
|
'ordersNo': this.ordersNo,
|
||||||
|
'status': this.status,
|
||||||
|
'ordersType': this.ordersType,
|
||||||
|
'userName': this.userName,
|
||||||
|
'startTime': this.startTime,
|
||||||
|
'endTime': this.endTime,
|
||||||
|
'qdCode': this.qdCode,
|
||||||
|
'sysUserName': this.sysUserName,
|
||||||
|
})
|
||||||
|
}).then(({ data }) => {
|
||||||
|
if (data && data.code === 0) {
|
||||||
|
this.tableDataLoading = false
|
||||||
|
for (var i in data.data.list) {
|
||||||
|
if (data.data.list[i].payMoney) {
|
||||||
|
this.totalMoney = this.totalMoney + Number(data.data.list[i].payMoney)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
let returnData = data.data
|
||||||
|
this.tableData = returnData
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 详情跳转
|
||||||
|
updates(row) {
|
||||||
|
this.$router.push({ path: '/userDetail', query: { userId: row.userId } })
|
||||||
|
},
|
||||||
|
// 退款
|
||||||
|
tuikuanBtn(row) {
|
||||||
|
let delid = row.ordersId
|
||||||
|
this.$confirm(`确定退款吗?`, '提示', {
|
||||||
|
confirmButtonText: '确定',
|
||||||
|
cancelButtonText: '取消',
|
||||||
|
type: 'warning'
|
||||||
|
}).then(() => {
|
||||||
|
this.$http({
|
||||||
|
url: this.$http.adornUrl('order/refundOrders?ordersId=' + delid),
|
||||||
|
method: 'post',
|
||||||
|
params: this.$http.adornParams({})
|
||||||
|
}).then(({
|
||||||
|
data
|
||||||
|
}) => {
|
||||||
|
if (data.code == 0) {
|
||||||
this.$message({
|
this.$message({
|
||||||
message: '删除成功',
|
message: '操作成功',
|
||||||
type: 'success',
|
type: 'success',
|
||||||
duration: 1500,
|
duration: 1500,
|
||||||
onClose: () => {
|
onClose: () => {
|
||||||
this.dataSelect()
|
this.dataSelect()
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
})
|
} else {
|
||||||
}).catch(() => {
|
this.$message({
|
||||||
})
|
message: data.msg,
|
||||||
},
|
type: 'warning',
|
||||||
// 获取数据列表
|
duration: 1500,
|
||||||
dataSelect () {
|
onClose: () => {
|
||||||
this.tableDataLoading = true
|
|
||||||
this.totalMoney = 0
|
|
||||||
this.$http({
|
|
||||||
url: this.$http.adornUrl('order/selectOrders'),
|
|
||||||
method: 'get',
|
|
||||||
params: this.$http.adornParams({
|
|
||||||
'page': this.page,
|
|
||||||
'limit': this.limit,
|
|
||||||
'ordersNo':this.ordersNo,
|
|
||||||
'status':this.status,
|
|
||||||
'ordersType': this.ordersType,
|
|
||||||
'userName': this.userName,
|
|
||||||
'startTime': this.startTime,
|
|
||||||
'endTime': this.endTime,
|
|
||||||
'qdCode': this.qdCode,
|
|
||||||
'sysUserName': this.sysUserName,
|
|
||||||
})
|
|
||||||
}).then(({data}) => {
|
|
||||||
if (data && data.code === 0) {
|
|
||||||
this.tableDataLoading = false
|
|
||||||
for (var i in data.data.list) {
|
|
||||||
if (data.data.list[i].payMoney) {
|
|
||||||
this.totalMoney = this.totalMoney + Number(data.data.list[i].payMoney)
|
|
||||||
}
|
}
|
||||||
}
|
})
|
||||||
let returnData = data.data
|
|
||||||
this.tableData = returnData
|
|
||||||
}
|
}
|
||||||
|
|
||||||
})
|
})
|
||||||
},
|
})
|
||||||
// 详情跳转
|
|
||||||
updates (row) {
|
|
||||||
this.$router.push({path: '/userDetail', query: {userId: row.userId}})
|
|
||||||
},
|
|
||||||
// 退款
|
|
||||||
tuikuanBtn(row){
|
|
||||||
let delid = row.ordersId
|
|
||||||
this.$confirm(`确定退款吗?`, '提示', {
|
|
||||||
confirmButtonText: '确定',
|
|
||||||
cancelButtonText: '取消',
|
|
||||||
type: 'warning'
|
|
||||||
}).then(() => {
|
|
||||||
this.$http({
|
|
||||||
url: this.$http.adornUrl('order/refundOrders?ordersId='+delid),
|
|
||||||
method: 'post',
|
|
||||||
params: this.$http.adornParams({})
|
|
||||||
}).then(({
|
|
||||||
data
|
|
||||||
}) => {
|
|
||||||
if(data.code==0){
|
|
||||||
this.$message({
|
|
||||||
message: '操作成功',
|
|
||||||
type: 'success',
|
|
||||||
duration: 1500,
|
|
||||||
onClose: () => {
|
|
||||||
this.dataSelect()
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}else{
|
|
||||||
this.$message({
|
|
||||||
message: data.msg,
|
|
||||||
type: 'warning',
|
|
||||||
duration: 1500,
|
|
||||||
onClose: () => {
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
})
|
|
||||||
})
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
mounted () {
|
},
|
||||||
this.dataSelect()
|
mounted() {
|
||||||
|
if (this.$route.query.userName) {
|
||||||
|
this.status = 1
|
||||||
|
this.userName = this.$route.query.userName
|
||||||
}
|
}
|
||||||
}
|
this.dataSelect()
|
||||||
|
},
|
||||||
|
watch: {
|
||||||
|
// 监听路由变化,重新获取数据
|
||||||
|
'$route'(to, from) {
|
||||||
|
if (to.query.userName) {
|
||||||
|
this.status = 1
|
||||||
|
this.userName = to.query.userName
|
||||||
|
this.dataSelect()
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
.customWidth {
|
.customWidth {
|
||||||
width: 80% !important;
|
width: 80% !important;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -208,9 +208,12 @@ export default {
|
|||||||
page: this.tableData.page,
|
page: this.tableData.page,
|
||||||
limit: this.tableData.limit
|
limit: this.tableData.limit
|
||||||
});
|
});
|
||||||
|
|
||||||
|
console.log("获取抽奖记录列表", data);
|
||||||
|
|
||||||
this.tableData.loading = false;
|
this.tableData.loading = false;
|
||||||
this.tableData.list = data.page.list;
|
this.tableData.list = data.data.list;
|
||||||
this.tableData.total = data.page.totalCount;
|
this.tableData.total = data.data.totalCount;
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
this.tableData.loading = false;
|
this.tableData.loading = false;
|
||||||
console.log(error);
|
console.log(error);
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -1311,7 +1311,10 @@
|
|||||||
this.$http({
|
this.$http({
|
||||||
url: this.$http.adornUrl(`user/${userId}`),
|
url: this.$http.adornUrl(`user/${userId}`),
|
||||||
method: 'get',
|
method: 'get',
|
||||||
params: this.$http.adornParams({})
|
params: {
|
||||||
|
...this.$http.adornParams({}),
|
||||||
|
userId: userId,
|
||||||
|
},
|
||||||
}).then(({
|
}).then(({
|
||||||
data
|
data
|
||||||
}) => {
|
}) => {
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
204
src/views/viplist/components/orderInfo.vue
Normal file
204
src/views/viplist/components/orderInfo.vue
Normal file
@@ -0,0 +1,204 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<el-form :model="queryForm" inline @submit.native.prevent="queryByTradeNo">
|
||||||
|
<el-form-item label="订单号" prop="outTradeNo">
|
||||||
|
<el-input v-model="queryForm.outTradeNo" placeholder="请输入订单号查询" style="width: 500px;"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item>
|
||||||
|
<el-button type="primary" @click="queryByTradeNo" :loading="loading">查询</el-button>
|
||||||
|
<el-button @click="resetHandle">重置</el-button>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
<div class="order_info">
|
||||||
|
<div class="item">
|
||||||
|
<div class="title">
|
||||||
|
用户信息
|
||||||
|
</div>
|
||||||
|
<template v-if="orderInfo.userInfo">
|
||||||
|
<div class="row">
|
||||||
|
<span> 昵称:</span>{{ orderInfo.userInfo.userName }}
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<span> 手机号:</span>{{ orderInfo.userInfo.phone }}
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<span> 支付宝账号:</span>{{ orderInfo.userInfo.zhiFuBao }}
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<span>支付宝姓名:</span> {{ orderInfo.userInfo.zhiFuBaoName }}
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<span>状态:</span>
|
||||||
|
<span v-if="orderInfo.userInfo.status == 1" style="color: #67C23A;">正常</span>
|
||||||
|
<span v-else style="color: #F56C6C;">异常</span>
|
||||||
|
</div>
|
||||||
|
<div class="row" v-if="!orderInfo.userInfo.status">
|
||||||
|
<span>异常原因:</span> <span style="color: #F56C6C;">{{ orderInfo.userInfo.platform }}</span>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<div class="empty" v-else>空空如也~</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<div class="title">
|
||||||
|
<span>实名认证信息</span>
|
||||||
|
</div>
|
||||||
|
<template v-if="orderInfo.authInfo">
|
||||||
|
<div class="row">
|
||||||
|
<span>真实姓名:</span> {{ orderInfo.authInfo.certName }}
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<span>身份证号:</span> {{ orderInfo.authInfo.certNo }}
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<span>银行名称:</span> {{ orderInfo.authInfo.bankName }}
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<span>银行卡号:</span> {{ orderInfo.authInfo.accountNo }}
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<span>预留手机号:</span> {{ orderInfo.authInfo.mobile }}
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<div class="empty" v-else>空空如也~</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<div class="title">
|
||||||
|
提现信息
|
||||||
|
</div>
|
||||||
|
<template v-if="orderInfo.withdrawTotal">
|
||||||
|
<div class="row">
|
||||||
|
<span>成功合计:</span> {{ orderInfo.withdrawTotal.success.total }}
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<span>成功笔数:</span> {{ orderInfo.withdrawTotal.success.count }}
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<span>失败合计:</span> {{ orderInfo.withdrawTotal.fail.count }}
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<span>失败笔数:</span> {{ orderInfo.withdrawTotal.fail.count }}
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<span>审核中合计:</span> {{ orderInfo.withdrawTotal.auditing.count }}
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<span>审核中笔数:</span> {{ orderInfo.withdrawTotal.auditing.count }}
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<span>其他合计:</span> {{ orderInfo.withdrawTotal.other.count }}
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<span>其他笔数:</span> {{ orderInfo.withdrawTotal.other.count }}
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<div class="empty" v-else>空空如也~</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<div class="title">
|
||||||
|
支付信息
|
||||||
|
</div>
|
||||||
|
<template v-if="orderInfo.payTotal">
|
||||||
|
<div class="row">
|
||||||
|
<span>成功合计:</span> {{ orderInfo.payTotal.success.total }}
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<span>成功笔数:</span> {{ orderInfo.payTotal.success.count }}
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<span>失败合计:</span> {{ orderInfo.payTotal.fail.count }}
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<span>失败笔数:</span> {{ orderInfo.payTotal.fail.count }}
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<span>未付款合计:</span> {{ orderInfo.payTotal.unpaid.count }}
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<span>未付款笔数:</span> {{ orderInfo.payTotal.unpaid.count }}
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<div class="empty" v-else>空空如也~</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { queryByTradeNo } from '@/api/viplist.js'
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
loading: false,
|
||||||
|
queryForm: {
|
||||||
|
// outTradeNo: '7ed7edc900884b6dabf871a330c3e13b-1075149450307057439'
|
||||||
|
outTradeNo: ''
|
||||||
|
},
|
||||||
|
orderInfo: ''
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
// 重置
|
||||||
|
resetHandle() {
|
||||||
|
this.queryForm.outTradeNo = ''
|
||||||
|
this.orderInfo = ''
|
||||||
|
},
|
||||||
|
// 根据订单号查询
|
||||||
|
async queryByTradeNo() {
|
||||||
|
try {
|
||||||
|
if (!this.queryForm.outTradeNo) return
|
||||||
|
this.loading = true
|
||||||
|
const res = await queryByTradeNo({ outTradeNo: this.queryForm.outTradeNo })
|
||||||
|
if (res.data.code == 0) {
|
||||||
|
this.orderInfo = res.data.data
|
||||||
|
} else {
|
||||||
|
this.orderInfo = ''
|
||||||
|
this.$message.error(res.data.message)
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
this.orderInfo = ''
|
||||||
|
console.log(error);
|
||||||
|
}
|
||||||
|
this.loading = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="scss">
|
||||||
|
.order_info {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: repeat(2, auto);
|
||||||
|
grid-template-rows: repeat(2, auto);
|
||||||
|
grid-column-gap: 15px;
|
||||||
|
grid-row-gap: 15px;
|
||||||
|
|
||||||
|
.item {
|
||||||
|
border: 1px solid #ececec;
|
||||||
|
padding: 15px;
|
||||||
|
background-color: #fff;
|
||||||
|
|
||||||
|
.title {
|
||||||
|
font-size: 16px;
|
||||||
|
font-weight: bold;
|
||||||
|
padding-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.row {
|
||||||
|
margin-top: 10px;
|
||||||
|
|
||||||
|
span {
|
||||||
|
color: #999;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.empty {
|
||||||
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
color: #999;
|
||||||
|
padding-bottom: 45px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
194
src/views/viplist/components/realNameList.vue
Normal file
194
src/views/viplist/components/realNameList.vue
Normal file
@@ -0,0 +1,194 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<div>
|
||||||
|
<el-form :inline="true" :model="query" class="demo-form-inline">
|
||||||
|
<el-form-item label="手机号">
|
||||||
|
<el-input v-model="query.phone" placeholder="请输入手机号"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="用户名">
|
||||||
|
<el-input v-model="query.name" placeholder="请输入用户名"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item>
|
||||||
|
<el-button type="primary" @click="getTableData">查询</el-button>
|
||||||
|
<el-button @click="resetHandle">重置</el-button>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<el-table :data="tableData.list" v-loading="tableData.loading" border stripe>
|
||||||
|
<el-table-column label="用户ID" prop="userId"></el-table-column>
|
||||||
|
<el-table-column label="用户名" prop="name"></el-table-column>
|
||||||
|
<el-table-column label="手机号" prop="mobile"></el-table-column>
|
||||||
|
<el-table-column label="实名信息" prop="certName" width="300">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<div>姓名:{{ scope.row.certName }}</div>
|
||||||
|
<div>身份证号:{{ scope.row.certNo }}</div>
|
||||||
|
<div>银行卡号:{{ scope.row.accountNo }}</div>
|
||||||
|
<div>开户行:{{ scope.row.bankName }}</div>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="操作" width="180" align="center">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<el-button size="mini" type="primary" @click="edit(scope.row)">编辑</el-button>
|
||||||
|
<el-button size="mini" type="danger" @click="del(scope.row)">删除</el-button>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
</div>
|
||||||
|
<div class="pagination">
|
||||||
|
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
|
||||||
|
:page-sizes="[10, 20, 30, 40]" :page-size="tableData.limit" :current-page="tableData.page"
|
||||||
|
layout="total,sizes, prev, pager, next,jumper" :total="tableData.total">
|
||||||
|
</el-pagination>
|
||||||
|
</div>
|
||||||
|
<el-dialog title="编辑" width="600px" :visible.sync="visible" @close="onClose">
|
||||||
|
<el-form :model="form" :rules="rules" ref="form" label-width="100px" label-position="left">
|
||||||
|
<el-form-item label="姓名" prop="certName">
|
||||||
|
<el-input v-model="form.certName" placeholder="请输入姓名"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="身份证号" prop="certNo">
|
||||||
|
<el-input v-model="form.certNo" placeholder="请输入身份证号"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="银行卡号" prop="accountNo">
|
||||||
|
<el-input v-model="form.accountNo" placeholder="请输入银行卡号"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="预留手机号" prop="mobile">
|
||||||
|
<el-input v-model="form.mobile" placeholder="请输入预留手机号"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="开户行" prop="bankName">
|
||||||
|
<el-input v-model="form.bankName" placeholder="请输入开户行"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
<template #footer>
|
||||||
|
<div class="dialog-footer" style="display: flex; justify-content: flex-end;">
|
||||||
|
<el-button size="small" @click="visible = false"> 取 消 </el-button>
|
||||||
|
<el-button size="small" type="primary" :loading="confirmLoading"
|
||||||
|
@click="confirmHandle">确定</el-button>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</el-dialog>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { userInfo_list, userInfo, userInfoDel } from "@/api/withdraw.js";
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
query: {
|
||||||
|
phone: "",
|
||||||
|
name: "",
|
||||||
|
},
|
||||||
|
resetQuery: {},
|
||||||
|
tableData: {
|
||||||
|
page: 1,
|
||||||
|
limit: 10,
|
||||||
|
total: 0,
|
||||||
|
list: [],
|
||||||
|
loading: false
|
||||||
|
},
|
||||||
|
visible: false,
|
||||||
|
confirmLoading: false,
|
||||||
|
form: {
|
||||||
|
userId: '',
|
||||||
|
certName: "",
|
||||||
|
certNo: "",
|
||||||
|
accountNo: "",
|
||||||
|
mobile: "",
|
||||||
|
bankName: "",
|
||||||
|
},
|
||||||
|
rules: {
|
||||||
|
certName: [{ required: true, message: "请输入姓名", trigger: "blur" }],
|
||||||
|
certNo: [{ required: true, message: "请输入身份证号", trigger: "blur" }],
|
||||||
|
accountNo: [{ required: true, message: "请输入银行卡号", trigger: "blur" }],
|
||||||
|
mobile: [{ required: true, message: "请输入预留手机号", trigger: "blur" }],
|
||||||
|
bankName: [{ required: true, message: "请输入开户行", trigger: "blur" }],
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
this.resetQuery = { ...this.query };
|
||||||
|
this.getTableData()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
// 确定编辑
|
||||||
|
confirmHandle() {
|
||||||
|
this.$refs.form.validate(async valid => {
|
||||||
|
if (valid) {
|
||||||
|
try {
|
||||||
|
this.confirmLoading = true
|
||||||
|
await userInfo(this.form)
|
||||||
|
this.visible = false
|
||||||
|
this.$message.success('编辑成功')
|
||||||
|
this.getTableData()
|
||||||
|
} catch (error) {
|
||||||
|
console.log(error);
|
||||||
|
}
|
||||||
|
this.confirmLoading = false
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 关闭弹窗, 重置表单
|
||||||
|
onClose() {
|
||||||
|
this.$refs.form.resetFields();
|
||||||
|
},
|
||||||
|
// 编辑
|
||||||
|
edit(row) {
|
||||||
|
this.form = { ...row }
|
||||||
|
this.visible = true
|
||||||
|
},
|
||||||
|
// 删除
|
||||||
|
del(row) {
|
||||||
|
console.log(row);
|
||||||
|
this.$confirm('是否删除该用户信息?', '提示', {
|
||||||
|
confirmButtonText: '确定',
|
||||||
|
cancelButtonText: '取消',
|
||||||
|
type: 'warning'
|
||||||
|
}).then(async () => {
|
||||||
|
try {
|
||||||
|
await userInfoDel({ userId: row.userId })
|
||||||
|
this.$message.success('删除成功')
|
||||||
|
this.getTableData()
|
||||||
|
} catch (error) {
|
||||||
|
console.log(error);
|
||||||
|
}
|
||||||
|
}).catch(() => { })
|
||||||
|
},
|
||||||
|
// 重置
|
||||||
|
resetHandle() {
|
||||||
|
this.query = { ...this.resetQuery }
|
||||||
|
this.tableData.page = 1
|
||||||
|
this.getTableData()
|
||||||
|
},
|
||||||
|
// 分页数量
|
||||||
|
handleSizeChange(size) {
|
||||||
|
this.tableData.page = 1;
|
||||||
|
this.tableData.limit = size;
|
||||||
|
this.getTableData();
|
||||||
|
},
|
||||||
|
// 分页
|
||||||
|
handleCurrentChange(val) {
|
||||||
|
this.tableData.page = val;
|
||||||
|
this.getTableData();
|
||||||
|
},
|
||||||
|
// 获取数据
|
||||||
|
async getTableData() {
|
||||||
|
try {
|
||||||
|
this.tableData.loading = true
|
||||||
|
const { data } = await userInfo_list({
|
||||||
|
page: this.tableData.page,
|
||||||
|
limit: this.tableData.limit,
|
||||||
|
phone: this.query.phone,
|
||||||
|
name: this.query.name,
|
||||||
|
})
|
||||||
|
this.tableData.list = data.data.list
|
||||||
|
this.tableData.total = data.data.totalCount
|
||||||
|
} catch (error) {
|
||||||
|
console.log(error);
|
||||||
|
}
|
||||||
|
this.tableData.loading = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
</script>
|
||||||
@@ -1,69 +1,55 @@
|
|||||||
<template>
|
<template>
|
||||||
<el-tabs v-model = "activeName" @tab-click = "handleClick">
|
<el-tabs v-model="activeName" @tab-click="handleClick">
|
||||||
<!-- <el-tab-pane label = "会员列表" name = "first"> -->
|
<el-tab-pane label="会员列表" name="first">
|
||||||
<div style = "margin-right:2%;text-align: right;">
|
<div style="margin-right:2%;text-align: right;">
|
||||||
<el-button style="margin-left:15px;" size="mini" type="primary" icon="document" :disabled="!isAuth('viplist:add')" @click="add">添加
|
<el-button style="margin-left:15px;" size="mini" type="primary" icon="document"
|
||||||
</el-button>
|
:disabled="!isAuth('viplist:add')" @click="add">添加
|
||||||
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
<el-table v-loading = "tableDataLoading" :data = "tableData.list" >
|
<el-table v-loading="tableDataLoading" :data="tableData.list">
|
||||||
<el-table-column fixed prop = "id" label = "编号" width = "50"></el-table-column>
|
<el-table-column fixed prop="id" label="编号" width="50"></el-table-column>
|
||||||
<el-table-column prop = "vipNameType" label = "会员类型" width = "150">
|
<el-table-column prop="vipNameType" label="会员类型" width="150">
|
||||||
<template slot-scope = "scope">
|
<template slot-scope="scope">
|
||||||
<span v-if = "scope.row.vipNameType == 0">月会员</span>
|
<span v-if="scope.row.vipNameType == 0">月会员</span>
|
||||||
<span v-if = "scope.row.vipNameType == 1">季会员</span>
|
<span v-if="scope.row.vipNameType == 1">季会员</span>
|
||||||
<span v-if = "scope.row.vipNameType == 2">年会员</span>
|
<span v-if="scope.row.vipNameType == 2">年会员</span>
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column prop = "money" label = "会员价格" >
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column prop="payDiamond" label="钻石价格">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label = "操作" width = "180" align="center" fixed="right">
|
|
||||||
<template slot-scope = "scope">
|
|
||||||
<el-button style="margin-left:15px;" size="mini" type="primary" icon="document" :disabled="!isAuth('viplist:update')" @click="updata(scope.row)">修改
|
|
||||||
</el-button>
|
|
||||||
<el-button size = "mini" type = "danger" :disabled="!isAuth('viplist:delete')" @click = "deletes(scope.row)">删除</el-button>
|
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
<el-table-column prop="money" label="会员价格">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="payDiamond" label="钻石价格">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="操作" width="180" align="center" fixed="right">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<el-button style="margin-left:15px;" size="mini" type="primary" icon="document"
|
||||||
|
:disabled="!isAuth('viplist:update')" @click="updata(scope.row)">修改
|
||||||
|
</el-button>
|
||||||
|
<el-button size="mini" type="danger" :disabled="!isAuth('viplist:delete')"
|
||||||
|
@click="deletes(scope.row)">删除</el-button>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
<div style = "text-align: center;margin-top: 10px;float:right">
|
<div style="text-align: center;margin-top: 10px;float:right">
|
||||||
<el-pagination @size-change = "handleSizeChange" @current-change = "handleCurrentChange" :page-sizes = "[5, 10, 15, 20]"
|
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
|
||||||
:page-size = "limit" :current-page = "page" layout = "total,sizes, prev, pager, next,jumper"
|
:page-sizes="[5, 10, 15, 20]" :page-size="limit" :current-page="page"
|
||||||
:total = "tableData.totalCount">
|
layout="total,sizes, prev, pager, next,jumper" :total="tableData.totalCount">
|
||||||
</el-pagination>
|
</el-pagination>
|
||||||
</div>
|
</div>
|
||||||
<!-- </el-tab-pane> -->
|
</el-tab-pane>
|
||||||
|
<el-tab-pane label="实名用户" name="realName">
|
||||||
|
<RealNameList ref="RealNameList" />
|
||||||
|
</el-tab-pane>
|
||||||
|
<el-tab-pane label="订单汇总" name="orderInfo">
|
||||||
|
<OrderInfo ref="OrderInfo" />
|
||||||
|
</el-tab-pane>
|
||||||
<el-dialog title="添加" :visible.sync="dialogFormVisible" center>
|
<el-dialog title="添加" :visible.sync="dialogFormVisible" center>
|
||||||
<div style="margin-bottom: 10px;">
|
<div style="margin-bottom: 10px;">
|
||||||
<span style="width: 200px;display: inline-block;text-align: right;">会员类型:</span>
|
<span style="width: 200px;display: inline-block;text-align: right;">会员类型:</span>
|
||||||
<el-radio-group v-model="vipNameType">
|
<el-radio-group v-model="vipNameType">
|
||||||
<el-radio :label="0">月会员</el-radio>
|
<el-radio :label="0">月会员</el-radio>
|
||||||
<el-radio :label="1">季会员</el-radio>
|
<el-radio :label="1">季会员</el-radio>
|
||||||
<el-radio :label="2">年会员</el-radio>
|
<el-radio :label="2">年会员</el-radio>
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
</div>
|
|
||||||
<div style="margin-bottom: 10px;">
|
|
||||||
<span style="width: 200px;display: inline-block;text-align: right;">会员价格:</span>
|
|
||||||
<el-input style="width:50%;" v-model="money" type="number" min="0" placeholder="请输入会员价格" ></el-input>
|
|
||||||
</div>
|
|
||||||
<div style="margin-bottom: 10px;">
|
|
||||||
<span style="width: 200px;display: inline-block;text-align: right;">钻石价格:</span>
|
|
||||||
<el-input style="width:50%;" v-model="payDiamond" type="number" min="0" placeholder="请输入钻石价格" ></el-input>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div slot="footer" class="dialog-footer">
|
|
||||||
<el-button @click="dialogFormVisible = false">取 消</el-button>
|
|
||||||
<el-button type="primary" @click="vipAdd()">确 定</el-button>
|
|
||||||
</div>
|
|
||||||
</el-dialog>
|
|
||||||
<el-dialog title="修改" :visible.sync="dialogFormVisible1" center>
|
|
||||||
<div style="margin-bottom: 10px;">
|
|
||||||
<span style="width: 200px;display: inline-block;text-align: right;">会员类型:</span>
|
|
||||||
<el-radio-group v-model="vipNameType">
|
|
||||||
<el-radio :label="0">月会员</el-radio>
|
|
||||||
<el-radio :label="1">季会员</el-radio>
|
|
||||||
<el-radio :label="2">年会员</el-radio>
|
|
||||||
</el-radio-group>
|
|
||||||
</div>
|
</div>
|
||||||
<div style="margin-bottom: 10px;">
|
<div style="margin-bottom: 10px;">
|
||||||
<span style="width: 200px;display: inline-block;text-align: right;">会员价格:</span>
|
<span style="width: 200px;display: inline-block;text-align: right;">会员价格:</span>
|
||||||
@@ -71,7 +57,32 @@
|
|||||||
</div>
|
</div>
|
||||||
<div style="margin-bottom: 10px;">
|
<div style="margin-bottom: 10px;">
|
||||||
<span style="width: 200px;display: inline-block;text-align: right;">钻石价格:</span>
|
<span style="width: 200px;display: inline-block;text-align: right;">钻石价格:</span>
|
||||||
<el-input style="width:50%;" v-model="payDiamond" type="number" min="0" placeholder="请输入钻石价格" ></el-input>
|
<el-input style="width:50%;" v-model="payDiamond" type="number" min="0"
|
||||||
|
placeholder="请输入钻石价格"></el-input>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div slot="footer" class="dialog-footer">
|
||||||
|
<el-button @click="dialogFormVisible = false">取 消</el-button>
|
||||||
|
<el-button type="primary" @click="vipAdd()">确 定</el-button>
|
||||||
|
</div>
|
||||||
|
</el-dialog>
|
||||||
|
<el-dialog title="修改" :visible.sync="dialogFormVisible1" center>
|
||||||
|
<div style="margin-bottom: 10px;">
|
||||||
|
<span style="width: 200px;display: inline-block;text-align: right;">会员类型:</span>
|
||||||
|
<el-radio-group v-model="vipNameType">
|
||||||
|
<el-radio :label="0">月会员</el-radio>
|
||||||
|
<el-radio :label="1">季会员</el-radio>
|
||||||
|
<el-radio :label="2">年会员</el-radio>
|
||||||
|
</el-radio-group>
|
||||||
|
</div>
|
||||||
|
<div style="margin-bottom: 10px;">
|
||||||
|
<span style="width: 200px;display: inline-block;text-align: right;">会员价格:</span>
|
||||||
|
<el-input style="width:50%;" v-model="money" type="number" min="0" placeholder="请输入会员价格"></el-input>
|
||||||
|
</div>
|
||||||
|
<div style="margin-bottom: 10px;">
|
||||||
|
<span style="width: 200px;display: inline-block;text-align: right;">钻石价格:</span>
|
||||||
|
<el-input style="width:50%;" v-model="payDiamond" type="number" min="0"
|
||||||
|
placeholder="请输入钻石价格"></el-input>
|
||||||
</div>
|
</div>
|
||||||
<div slot="footer" class="dialog-footer">
|
<div slot="footer" class="dialog-footer">
|
||||||
<el-button @click="dialogFormVisible1 = false">取 消</el-button>
|
<el-button @click="dialogFormVisible1 = false">取 消</el-button>
|
||||||
@@ -82,229 +93,236 @@
|
|||||||
|
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
export default {
|
import RealNameList from './components/realNameList.vue'
|
||||||
data () {
|
import OrderInfo from './components/orderInfo.vue'
|
||||||
return {
|
export default {
|
||||||
activeName:'first',
|
components: {
|
||||||
page: 1,
|
RealNameList,
|
||||||
limit: 10,
|
OrderInfo
|
||||||
classify: 1,
|
},
|
||||||
id:'',
|
data() {
|
||||||
vipNameType: -1,
|
return {
|
||||||
money: '',
|
activeName: 'first',
|
||||||
payDiamond:'',
|
// activeName: 'orderInfo',
|
||||||
tableDataLoading:false,
|
page: 1,
|
||||||
dialogFormVisible:false,
|
limit: 10,
|
||||||
dialogFormVisible1:false,
|
classify: 1,
|
||||||
tableData:{},
|
id: '',
|
||||||
}
|
vipNameType: -1,
|
||||||
},
|
money: '',
|
||||||
methods: {
|
payDiamond: '',
|
||||||
// 多选
|
tableDataLoading: false,
|
||||||
changeFun (val) {
|
dialogFormVisible: false,
|
||||||
this.checkBoxData = val
|
dialogFormVisible1: false,
|
||||||
},
|
tableData: {},
|
||||||
// tabs切换
|
|
||||||
handleClick (tab, event) {
|
|
||||||
if (tab._props.label == '轮播图') {
|
|
||||||
this.page = 1
|
|
||||||
this.limit = 5
|
|
||||||
this.classify = 1
|
|
||||||
this.dataSelect()
|
|
||||||
}
|
|
||||||
},
|
|
||||||
handleSizeChange (val) {
|
|
||||||
this.limit = val
|
|
||||||
this.dataSelect()
|
|
||||||
},
|
|
||||||
handleCurrentChange (val) {
|
|
||||||
this.page = val
|
|
||||||
this.dataSelect()
|
|
||||||
},
|
|
||||||
// 查询列表
|
|
||||||
select() {
|
|
||||||
this.page = 1
|
|
||||||
this.limit = 10
|
|
||||||
this.dataSelect()
|
|
||||||
},
|
|
||||||
// 添加
|
|
||||||
add(){
|
|
||||||
this.vipNameType = -1
|
|
||||||
this.money = ''
|
|
||||||
this.payDiamond = ''
|
|
||||||
this.id = ''
|
|
||||||
this.dialogFormVisible = true
|
|
||||||
},
|
|
||||||
updata(row){
|
|
||||||
this.vipNameType = row.vipNameType
|
|
||||||
this.money = row.money
|
|
||||||
this.payDiamond = row.payDiamond
|
|
||||||
this.id = row.id
|
|
||||||
this.dialogFormVisible1 = true
|
|
||||||
},
|
|
||||||
vipAdd(){
|
|
||||||
if (this.vipNameType == -1) {
|
|
||||||
this.$notify({
|
|
||||||
title: '提示',
|
|
||||||
duration: 1800,
|
|
||||||
message: '请选择会员类型',
|
|
||||||
type: 'warning'
|
|
||||||
});
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if (this.money === '') {
|
|
||||||
this.$notify({
|
|
||||||
title: '提示',
|
|
||||||
duration: 1800,
|
|
||||||
message: '请输入会员价格',
|
|
||||||
type: 'warning'
|
|
||||||
});
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if (this.payDiamond === '') {
|
|
||||||
this.$notify({
|
|
||||||
title: '提示',
|
|
||||||
duration: 1800,
|
|
||||||
message: '请输入钻石价格',
|
|
||||||
type: 'warning'
|
|
||||||
});
|
|
||||||
return
|
|
||||||
}
|
|
||||||
this.$http({
|
|
||||||
url: this.$http.adornUrl('vipDetails/insertVipDetails'),
|
|
||||||
method: 'post',
|
|
||||||
data: this.$http.adornData({
|
|
||||||
'vipNameType':this.vipNameType,
|
|
||||||
'money':this.money,
|
|
||||||
'payDiamond':this.payDiamond,
|
|
||||||
})
|
|
||||||
}).then(({data}) => {
|
|
||||||
|
|
||||||
if(data.code == 0){
|
|
||||||
this.$message({
|
|
||||||
message: '操作成功',
|
|
||||||
type: 'success',
|
|
||||||
duration: 1500,
|
|
||||||
onClose: () => {
|
|
||||||
this.dialogFormVisible = false
|
|
||||||
this.dataSelect()
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}else{
|
|
||||||
this.$message({
|
|
||||||
message: data.msg,
|
|
||||||
type: 'warning',
|
|
||||||
duration: 1500,
|
|
||||||
onClose: () => {
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
vipUpdata(){
|
|
||||||
if (this.money === '') {
|
|
||||||
this.$notify({
|
|
||||||
title: '提示',
|
|
||||||
duration: 1800,
|
|
||||||
message: '请输入会员价格',
|
|
||||||
type: 'warning'
|
|
||||||
});
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if (this.payDiamond === '') {
|
|
||||||
this.$notify({
|
|
||||||
title: '提示',
|
|
||||||
duration: 1800,
|
|
||||||
message: '请输入钻石价格',
|
|
||||||
type: 'warning'
|
|
||||||
});
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
this.$http({
|
|
||||||
url: this.$http.adornUrl('vipDetails/updateVipDetails'),
|
|
||||||
method: 'post',
|
|
||||||
data: this.$http.adornData({
|
|
||||||
'vipNameType':this.vipNameType,
|
|
||||||
'money':this.money,
|
|
||||||
'payDiamond':this.payDiamond,
|
|
||||||
'id':this.id
|
|
||||||
})
|
|
||||||
}).then(({data}) => {
|
|
||||||
|
|
||||||
if(data.code == 0){
|
|
||||||
this.dialogFormVisible1 = false
|
|
||||||
this.$message({
|
|
||||||
message: '操作成功',
|
|
||||||
type: 'success',
|
|
||||||
duration: 1500,
|
|
||||||
onClose: () => {
|
|
||||||
this.dataSelect()
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}else{
|
|
||||||
this.$message({
|
|
||||||
message: data.msg,
|
|
||||||
type: 'warning',
|
|
||||||
duration: 1500,
|
|
||||||
onClose: () => {
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 删除banner图
|
|
||||||
deletes (row) {
|
|
||||||
let delid = row.id
|
|
||||||
this.$confirm(`确定删除此条信息?`, '提示', {
|
|
||||||
confirmButtonText: '确定',
|
|
||||||
cancelButtonText: '取消',
|
|
||||||
type: 'warning'
|
|
||||||
}).then(() => {
|
|
||||||
this.$http({
|
|
||||||
url: this.$http.adornUrl(`vipDetails/deleteVipDetails?id=${delid}`),
|
|
||||||
method: 'post',
|
|
||||||
params: this.$http.adornParams({})
|
|
||||||
}).then(({data}) => {
|
|
||||||
this.$message({
|
|
||||||
message: '删除成功',
|
|
||||||
type: 'success',
|
|
||||||
duration: 1500,
|
|
||||||
onClose: () => {
|
|
||||||
this.dataSelect()
|
|
||||||
}
|
|
||||||
})
|
|
||||||
})
|
|
||||||
}).catch(() => {
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 获取数据列表
|
|
||||||
dataSelect () {
|
|
||||||
this.tableDataLoading = true
|
|
||||||
this.$http({
|
|
||||||
url: this.$http.adornUrl('vipDetails/selectVipDetailsList'),
|
|
||||||
method: 'get',
|
|
||||||
params: this.$http.adornParams({
|
|
||||||
'page': this.page,
|
|
||||||
'limit': this.limit
|
|
||||||
})
|
|
||||||
}).then(({data}) => {
|
|
||||||
if (data && data.code === 0) {
|
|
||||||
this.tableDataLoading = false
|
|
||||||
let returnData = data.data
|
|
||||||
this.tableData = returnData
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
},
|
|
||||||
mounted () {
|
|
||||||
this.dataSelect()
|
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
// 多选
|
||||||
|
changeFun(val) {
|
||||||
|
this.checkBoxData = val
|
||||||
|
},
|
||||||
|
// tabs切换
|
||||||
|
handleClick(tab, event) {
|
||||||
|
if (tab._props.label == '轮播图') {
|
||||||
|
this.page = 1
|
||||||
|
this.limit = 5
|
||||||
|
this.classify = 1
|
||||||
|
this.dataSelect()
|
||||||
|
}
|
||||||
|
},
|
||||||
|
handleSizeChange(val) {
|
||||||
|
this.limit = val
|
||||||
|
this.dataSelect()
|
||||||
|
},
|
||||||
|
handleCurrentChange(val) {
|
||||||
|
this.page = val
|
||||||
|
this.dataSelect()
|
||||||
|
},
|
||||||
|
// 查询列表
|
||||||
|
select() {
|
||||||
|
this.page = 1
|
||||||
|
this.limit = 10
|
||||||
|
this.dataSelect()
|
||||||
|
},
|
||||||
|
// 添加
|
||||||
|
add() {
|
||||||
|
this.vipNameType = -1
|
||||||
|
this.money = ''
|
||||||
|
this.payDiamond = ''
|
||||||
|
this.id = ''
|
||||||
|
this.dialogFormVisible = true
|
||||||
|
},
|
||||||
|
updata(row) {
|
||||||
|
this.vipNameType = row.vipNameType
|
||||||
|
this.money = row.money
|
||||||
|
this.payDiamond = row.payDiamond
|
||||||
|
this.id = row.id
|
||||||
|
this.dialogFormVisible1 = true
|
||||||
|
},
|
||||||
|
vipAdd() {
|
||||||
|
if (this.vipNameType == -1) {
|
||||||
|
this.$notify({
|
||||||
|
title: '提示',
|
||||||
|
duration: 1800,
|
||||||
|
message: '请选择会员类型',
|
||||||
|
type: 'warning'
|
||||||
|
});
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (this.money === '') {
|
||||||
|
this.$notify({
|
||||||
|
title: '提示',
|
||||||
|
duration: 1800,
|
||||||
|
message: '请输入会员价格',
|
||||||
|
type: 'warning'
|
||||||
|
});
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (this.payDiamond === '') {
|
||||||
|
this.$notify({
|
||||||
|
title: '提示',
|
||||||
|
duration: 1800,
|
||||||
|
message: '请输入钻石价格',
|
||||||
|
type: 'warning'
|
||||||
|
});
|
||||||
|
return
|
||||||
|
}
|
||||||
|
this.$http({
|
||||||
|
url: this.$http.adornUrl('vipDetails/insertVipDetails'),
|
||||||
|
method: 'post',
|
||||||
|
data: this.$http.adornData({
|
||||||
|
'vipNameType': this.vipNameType,
|
||||||
|
'money': this.money,
|
||||||
|
'payDiamond': this.payDiamond,
|
||||||
|
})
|
||||||
|
}).then(({ data }) => {
|
||||||
|
|
||||||
|
if (data.code == 0) {
|
||||||
|
this.$message({
|
||||||
|
message: '操作成功',
|
||||||
|
type: 'success',
|
||||||
|
duration: 1500,
|
||||||
|
onClose: () => {
|
||||||
|
this.dialogFormVisible = false
|
||||||
|
this.dataSelect()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
this.$message({
|
||||||
|
message: data.msg,
|
||||||
|
type: 'warning',
|
||||||
|
duration: 1500,
|
||||||
|
onClose: () => {
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
vipUpdata() {
|
||||||
|
if (this.money === '') {
|
||||||
|
this.$notify({
|
||||||
|
title: '提示',
|
||||||
|
duration: 1800,
|
||||||
|
message: '请输入会员价格',
|
||||||
|
type: 'warning'
|
||||||
|
});
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if (this.payDiamond === '') {
|
||||||
|
this.$notify({
|
||||||
|
title: '提示',
|
||||||
|
duration: 1800,
|
||||||
|
message: '请输入钻石价格',
|
||||||
|
type: 'warning'
|
||||||
|
});
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
this.$http({
|
||||||
|
url: this.$http.adornUrl('vipDetails/updateVipDetails'),
|
||||||
|
method: 'post',
|
||||||
|
data: this.$http.adornData({
|
||||||
|
'vipNameType': this.vipNameType,
|
||||||
|
'money': this.money,
|
||||||
|
'payDiamond': this.payDiamond,
|
||||||
|
'id': this.id
|
||||||
|
})
|
||||||
|
}).then(({ data }) => {
|
||||||
|
|
||||||
|
if (data.code == 0) {
|
||||||
|
this.dialogFormVisible1 = false
|
||||||
|
this.$message({
|
||||||
|
message: '操作成功',
|
||||||
|
type: 'success',
|
||||||
|
duration: 1500,
|
||||||
|
onClose: () => {
|
||||||
|
this.dataSelect()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
this.$message({
|
||||||
|
message: data.msg,
|
||||||
|
type: 'warning',
|
||||||
|
duration: 1500,
|
||||||
|
onClose: () => {
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 删除banner图
|
||||||
|
deletes(row) {
|
||||||
|
let delid = row.id
|
||||||
|
this.$confirm(`确定删除此条信息?`, '提示', {
|
||||||
|
confirmButtonText: '确定',
|
||||||
|
cancelButtonText: '取消',
|
||||||
|
type: 'warning'
|
||||||
|
}).then(() => {
|
||||||
|
this.$http({
|
||||||
|
url: this.$http.adornUrl(`vipDetails/deleteVipDetails?id=${delid}`),
|
||||||
|
method: 'post',
|
||||||
|
params: this.$http.adornParams({})
|
||||||
|
}).then(({ data }) => {
|
||||||
|
this.$message({
|
||||||
|
message: '删除成功',
|
||||||
|
type: 'success',
|
||||||
|
duration: 1500,
|
||||||
|
onClose: () => {
|
||||||
|
this.dataSelect()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}).catch(() => {
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 获取数据列表
|
||||||
|
dataSelect() {
|
||||||
|
this.tableDataLoading = true
|
||||||
|
this.$http({
|
||||||
|
url: this.$http.adornUrl('vipDetails/selectVipDetailsList'),
|
||||||
|
method: 'get',
|
||||||
|
params: this.$http.adornParams({
|
||||||
|
'page': this.page,
|
||||||
|
'limit': this.limit
|
||||||
|
})
|
||||||
|
}).then(({ data }) => {
|
||||||
|
if (data && data.code === 0) {
|
||||||
|
this.tableDataLoading = false
|
||||||
|
let returnData = data.data
|
||||||
|
this.tableData = returnData
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
this.dataSelect()
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
.customWidth {
|
.customWidth {
|
||||||
width: 80% !important;
|
width: 80% !important;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -83,7 +83,7 @@
|
|||||||
:page-size="limit"
|
:page-size="limit"
|
||||||
:current-page="page"
|
:current-page="page"
|
||||||
layout="total,sizes, prev, pager, next,jumper"
|
layout="total,sizes, prev, pager, next,jumper"
|
||||||
:total="tableData.total"
|
:total="tableData.totalCount"
|
||||||
>
|
>
|
||||||
</el-pagination>
|
</el-pagination>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Reference in New Issue
Block a user